一个Java程序可以认为是一系列对象的集合,对于java程序而言:万物皆对象。
在java语言里,所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开头,但是关键字不能作为标识符。
java中,万物皆对象。而对象是类的一个实例,类是抽象的东西,人是一个抽象的名词,而我们是人这个类中实实在在的实例。在java里,类具有行为和属性,行为定义为成员方法,属性定义为成员变量。通过类创造一个实例,必须要调用类的构造方法。每一个类都会有一个构造方法,至少有一个默认的构造方法。如果没有显示的声明一个构造方法,那么编译器会为该类提供一个默认的构造方法来让类能够实例化一个对象。例如
public class HelloWorld { public HelloWorld(){ //这个是一个默认的无参构造方法 } /** * @param args */ public static void main(String[] args) { // TODO 自动生成的方法存根 System.out.println("HelloWorld Java"); } }---------------------------------------------------------------------------------------------------------------------------在一个java源文件里,有且只能有一个public类,源文件的名称应该和public类的类名保持一致。
java语言提供了8种基本类型,6个数值型,byte short int long float double 一个字符型char 一个布尔型 boolean,数值型的默认值都是0,布尔值的默认值是false
除了基本数据类型以外,还有引用数据类型,引用类型指向一个对象,对象和数组都是引用数据类型,默认值都是null。
常量用final来定义 例如 final double PI=3.1415926
变量分为:局部变量,成员变量,类变量。
局部变量声明在方法,构造方法,语句块中,局部变量没有默认值,所以声明局部变量的时候一定要进行初始化,局部变量是在栈上分配的。
成员变量也叫实例变量,因为对象是一个实例嘛,成员变量的值随着一个对象的创建也随之确定,随着对象的销毁而销毁。
类变量也称为静态变量,在类中以static关键字声明,但必须在方法构造方法和语句块之外,无论一个类创建了多少个对象,类只拥有类变量的一份拷贝,静态变量储存在静态存储区。
------------------------------------------------------------------------------------------------------------------------------------------
Java中,可以使用访问控制符来保护对类、变量、方法和构造方法的访问。Java支持4种不同的访问权限。
默认的,也称为 default,在同一包内可见,不使用任何修饰符。
私有的,以 private 修饰符指定,在同一类内可见。
共有的,以 public 修饰符指定,对所有类可见。
受保护的,以 protected 修饰符指定,对同一包内的类和所有子类可见。
JAVA关键字:
abstract抽象方法,抽象类的修饰符assert断言条件是否满足boolean布尔数据类型break跳出循环byte8-bit 有符号数据类型caseswitch语句的一个条件catch和try搭配扑捉异常信息char16-bit Unicode字符数据类型class定义类const未使用continue不执行循环体剩余部分defaultswitch语句中的默认分支do循环语句,循环体至少会执行一次double64-bit双精度浮点数elseif条件不成立时执行的分支enum枚举类型extends表示一个类是另一个类的子类final表示一个值在初始化之后就不能再改变了 表示方法不能被重写,或者一个类不能有子类finally为了完成执行的代码而设计的,主要是为了程序的健壮性和完整性,无论有没有异常发生都执行代码。float32-bit单精度浮点数forfor循环语句goto未使用if条件语句implements表示一个类实现了接口import导入类instanceof测试一个对象是否是某个类的实例int32位整型数interface接口,一种抽象的类型,仅有方法和常量的定义long64位整型数native表示方法用非java代码实现new分配新的类实例package一系列相关类组成一个包private表示私有字段,或者方法等,只能从类内部访问protected表示字段只能通过类或者其子类访问 子类或者在同一个包内的其他类public表示共有属性或者方法return方法返回值short16位数字static表示在类级别定义,所有实例共享的strictfp浮点数比较使用严格的规则super表示基类switch选择语句synchronized表示同一时间只能由一个线程访问的代码块this表示调用当前实例 或者调用另一个构造函数throw抛出异常throws定义方法可能抛出的异常transient修饰不要序列化的字段try表示代码块要做异常处理或者和finally配合表示是否抛出异常都执行finally中的代码void标记方法不返回任何值volatile标记字段可能会被多个线程同时访问,而不做同步whilewhile循环