1. void
用于定义方法的返回值类型。
它表示一个方法没有返回值。在该方法中不能写return语句。调用该方法的代码也不能用一个变量来接收方法的返回。
2. null
对象引用类型的一个特殊值。
对象引用类型是一个用来装对象的内存地址的“小盒子”。它的里边一般要装一个很大的整数,表示对象存储的位置。
null其实就是数字0。
可以把null冒充为一个对象的地址,存入所说的“小盒子”中。它并不表示在内存为0的那个位置真的存在一个对象。而是表示:该引用(或说指针)不与任何对象相关联。
3. class
class用于定义一个类。
类中可以声明一些变量,也可以声明一些操作这些变量的方法。
变量般声明为private,也可以声明为public。
方法一般声明为public,也可台电声明为private。
一般来说,在类定义完成后,类中所声明的东西尚不存在。
用类去实例化一个对象后,类中声称的东西就存在一份,再实例化,又会存在另一份。
4. private, public, protected, default
这些都是用来控制访问权限的关键字。
private最“小气”。它所修饰的东西,只能在类内访问。
public 最“无私”。它所修饰的东西,可以在任何地点访问。
protected “亲疏有别”。它所修饰的东西,本类和它的继承类可以访问。
5. this
表示正在执行当前方法的那个对象的地址(引用,指针)。
一般方法的执行,有个前提条件,就是必须先存在某个对象。方法获得执行后,启动它的执行的那个对象(其实是对象的地址)就做为第一个“隐含”的参数,传入到方法中。这个看不见的参数,就是this。
6. extends
表示继承关系的关键字。
一个类继承了其它类,立即就具有了那个类的全部能力。
任何类都是直接或间接从Object类继承的。
每个类只能从一个父类继承。
父类又叫:基类(base class) 或者超类(super class)
7. super
在子类中调用父类中的被子类覆盖了的方法需要用super
super.xxx(…);
在子类的构造方法中,控制执行父类的哪个构造方法,需要用super
super(…);
8. abstract
如果用来修饰方法,表明该方法是抽象方法。
抽象方法,只有定义(声明部分),而没有具体的实现代码。无法执行一个抽象方法。抽象方法等待着继承的子类去覆盖。
如果用来修饰类,表明该类是抽象类。
不能用抽象类去实例化对象。
抽象类的唯一用途是等待着其它的类来继承。
包含了抽象方法的类,必须声明为抽象类。
9. interface
用于定义一个接口。
一般来说,抽象类中,既包含了抽象方法,也包含了有具体动作的一般方法。
而接口就相当于,没有任何具体方法的,全部由抽象方法组成的类。
所以,可以说,接口就是:纯而又纯的抽象类。
10. implements
表示一个类要支持(或说实现)某个接口。
一个类,只能继承自一个父类。
一个类,可以声明实现多个接口。
11. static
如果static修饰一个变量,表明该变量是静态的变量。
静态变量的特性是,它不依赖于对象。
类定义后,静态变量就已经存在。
创建对象的时候,也不会再去创建静态变量的实例。
如果static 修饰一个方法,表明该方法是一个静态方法。
静态方法的特性是,它不依赖于对象。
没有创建对象的时候,就可以调用一个类的静态方法。而普通的方法,需要创建对象后才能调用。所以普通的方法,也称为:“对象方法”。
静态方法没有this指针。
静态方法中,不能调用非静态的东西。
12. final
如果final修饰一个变量,该变量就成为常量。常量的值今后不能去修改。
如果final修饰一个方法,该方法就成为“最终方法”。这个方法不允许子类去覆盖。
如果final修饰一个类,该类就成为“最终类”。这个类不允许其它类继承。
final不能与abstract同时使用。
13. new
通过类来实例化一个对象。就是“生产”出一个对象。
在new的过程中,会自动调用类的构造方法,完成对对象状态初始化的工作。
如果一个类有多个构造方法,会根据提供的参数的情况选择一个执行。
14. instanceof
用来判断一个对象是否与某个类兼容。判断的结果是一个boolean量。
a instanceof A
当创建a对象的类就是A的时候为真。
当创建a对象的类是从A类真接可间接继承的时候为真。
|