1.new
新的关键字在生成对象时完成了三件事情:
a)为对象开辟内存空间。
b)调用类的构造方法。
c)将生成的对象的地址返回
2,本
1)这是Java的的一个关键字,表示某个对象。
2)本可以出现在实例方法和构造方法中,但不可以出现在类方法中。
3)本关键字出现在类的构造方法中时,代表使用该构造方法所创建的对象。
4)本关键字出现在类的实例方法中时,代表正在调用该方法的当前对象。
5)需要注意的是,当一个变量被声明为静态时,是不能用此来指向的,因为这指向某一具体对象,不能用来指示类本身。
6)这还可以用于某个构造函数的第一句,用来调用该类的另一个构造函数。
3.final
最终可以修饰属性(数据成员,参数),方法,类。
最后的修饰类:
当一个类被最终所修饰时,表示该类是一个终态类,即不能被继承。
最后的修饰方法:
当一个方法被final所修饰时,表示该方法是一个终态方法,即不能被重写(Override)。
(保证方法不会在继承后修改和重载;所有的私人方法都隐含式最后的;懂Java中使用动态绑定(后期绑定)实现多态,除了静态的和最终的方法是使用前期绑定的;)
最后的修饰属性:
当一个属性被最终所修饰时,表示该属性不能被改写。
(使用前总是被初始化并被强制要求;一旦赋值后,对于基本类型其值会恒定不变,而对于对象引用会始终指向赋值的,但指向对象自身是可以修改的;)
最终修饰参数,对于基本类型表示无法改变参数的值,对于对象引用表示无法改变引用所指的对象;
当最终修饰一个原生数据类型时,表示该原生数据类型的值不能发生变化(比如说不能从10变为20);如果最终修饰一个引用类型时,表示该引用类型不能再指向其他对象了,但该引用所指向的对象的内容是可以发生变化的。
4.Super
超级关键字主要是用来调用父类的成员变量和方法的
超级表示对父类对象的引用。与此(对当前对象的引用)一样,必须是构造方法的第一条可执行语句,前面不能有可执行语句。
5.static
表示静态
特点:
1)随着类的加载而加载;
2)优先于对象的存在;
3)被所有对象共享;
4)可直接被类调用
修饰变量:叫类变量,存在于方法区中,区别于成员变量存在于堆内存中;
修饰方法:叫类方法或静态方法
静态方法只能继承,不能重写(覆盖)
静态的只能访问静态的;静态非的可以访问一切 不能在静态方法中使用这个关键字
静态代码块的作用也是完成一些初始化工作首先执行静态代码块,然后执行构造方法。静态代码块在类被加载的时候执行,而构造方法是在生成对象的时候执行;要想调用某个类来生成对象,首先需要将类加载到Java的虚拟机上(JVM),然后由JVM加载这个类来生成对象。
类的静态代码块只会执行一次,是在类被加载的时候执行的,因为每个类只会被加载一次,所以静态代码块也只会被执行一次;而构造方法则不然,每次生成一个对象的时候都会调用类的构造方法,所以新一次就会调用构造方法一次。