关键字☆ (1)概述:被Java语言赋予特定含义的单词叫做关键字 (2)特点:全部小写 (3)注意事项: A:goto和const作为保留字存在,目前不使用,将来在JDK升级中有可能使用 B:类似于Notepad++这样的高级记事本会对关键字有特殊颜色标记 (4)判断一下是否是关键字: class,HelloWorld,public,static,void,main(不是),String,System
private关键字☆ (1)私有的意思,可以修饰成员变量和成员方法 (2)特点: 被private修饰后的成员只能在本类中被访问 (3)private的应用: 以后再写一个类的时候: 把所有的成员变量给private了 提供对应的getXxx()/setXxx()方法 this关键字☆ (1)代表当前类的引用对象 记住:哪个对象调用方法,该方法内部的this就代表那个对象 (2)this的应用场景: A:解决了局部变量隐藏成员变量的问题 当局部变量和成员变量名称一样时,通过this来获取到成员变量
★this和super的区别 分别是什么? this:代表本类对应的引用 super:代表父类存储空间的标识,可以理解为父类引用,可以操作父类信息 怎么用呢? 调用成员变量 this.成员变量 super.成员变量 调用构造方法 this(...) super(...) 调用成员方法 this.成员方法 super.成员方法 ★super不能调用父类中私有的方法或者成员,因为私有的只有父类本身能访问
static关键字☆ (1)可以修饰成员变量和成员方法。 (2)静态的特点: A:随着类的加载而加载(回想main方法) B:优先与对象存在 C:被类的所有对象共享(通过这点来考虑是否应该定义为static) 这其实也是我们判断该不该使用静态的依据。 举例:饮水机和水杯的问题思考 饮水机(用静态修饰) 水杯(不能用静态修饰) D:可以通过类名调用(也可以是对象,不过建议还是通过类名) 这里仅限static修饰的变量和方法,而类除外 E:静态修饰的成员,我们一般称之为类成员 F:静态方法只能访问静态的成员变量和静态的成员方法 (3)静态的内存图 方法区中有一个静态区 (4)静态的注意事项; 在静态方法中没有this对象,因为静态是随着类的加载而加载的,this是随着对象的创建而存在的,静态比对象先存在。 (5)静态变量和成员变量的区别 A:所属不同 静态变量:属于类,类变量 成员变量:属于对象,对象变量,实例变量 B:内存位置不同 静态变量:方法区的静态区 成员变量:堆内存 C:生命周期不同 静态变量:静态变量是随着类的加载而加载,随着类的消失而消失 成员变量:成员变量是随着对象的创建而存在,随着对象的消失而消失 D:调用不同 静态变量:可以通过对象名调用,也可以通过类名调用 成员变量:只能通过对象名调用 (6)main方法是静态的,因为它是被虚拟机调用的,虚拟机调用它时不用创建对象,直接类名调用就可以了(类名.main) public:权限最大 static:不用创建对象调用 void:返回值给jvm没有意义 main:就是一个常见的名称。 String[]args:可以接收数据,提供程序的灵活性 格式:java MainDemo hello world java java MainDemo 10 20 30
final关键字☆ (1)final是最终的意思 (2)特点: final可以修饰类,该类不能被继承 final可以修饰方法,该方法不能被重写(覆盖,复写) final可以修饰变量,该变量不能被重新赋值,因为这是一个常量 ★常量: 字面值常量 “hello”,10,true 自定义常量 final int x = 10; (3)面试题: final修饰局部变量的问题: a:基本类型,值不能发生改变 b:引用类型,地址值不能发生改变,但是对象的内容是可以改变的 final修饰变量的初始化时机 a:被final修饰的变量只能赋值一次 b:在构造方法完毕前。(非静态的变量)
|