*this是一个变量、引用,this变量中保存了内存地址指向本身,this存储在jvm堆
*内存Java对象内部。
-
创建100个Java对象,每一个对象都有this,也就是有100个不同的this。
-
当一个行为/动作执行过程中是需要对象参与的,一定要定义为“实例方法”,不要static。
-
“this.”在用来区分局部变量和实例变量时不能省略。
-
this可以出现在“实例方法”当中,指向当前正在执行这个动作的对象。(this代表当前对象)
-
this可以使用在构造方法当中,通过当前的构造方法调用其他构造方法【语法格式:this(实参);】。
-
this()只能出现在构造函数的第一行。
-
this不能使用在带有static方法中。
-
静态变量在类加载时初始化,访问时不需要创建对象,直接用“类名.静态变量名”方式访问,不建议用对象调用
-
同一类的实例方法直接调用直接this.方法名,虽然不会报错但是不建议成员方法内使用this. 调用静态方法或变量
-
static修饰的变量为静态变量。
static修饰的所有元素都是类级别的特征,与具体的对象无关。
主程序对有static关键字修饰的方法调用:类名.方法名(实参); person.方法名(i);
当所修饰的方法和调用在同一类时可以省略类名,直接使用方法名()。
Person per = new Person(); person()统称方法。
没有static关键字修饰的方法调用:引用.方法名(实参);
per.setAge(5); -
super不是引用类型,super中存储的不是内存地址,super指向的不是父类对象。
- super代表的是当前子类对象中的父类型特征。
3.什么时候使用super?
子类和父类中都有某个数据,例如,子类和父类中都有name这个属性。如果要再子类中访问父类中的name属性,需要使用 super。 - super可以用在什么地方
super可以用在成员方法中,不 能用在静态方法中。
super可以用在构造方法中,super()只能存在在第一。给当前子类对象中的父类型特征赋值,并不会创建父类对象。
- final和private一样不能被覆盖,继承。
final修饰的成员变量必须 显示的 初始化。
final修饰的局部变量一旦被赋值,不能修改。
final修饰的成员变量一般和static联用。修饰常量