package text;
/**
1.super不是引用类型,super中储存的不是内存地址,super指向的不是父类型对象
2.super代表的是当前子类对象中的父类型特征
3.super什么时候使用?
子类和父类中都有某个数据,例如,子类和父类都有name这个属性
如果要在子类中访问父类中的name属性,需要使用super
4.super可以用在什么地方?
(1)super可以用在成员方法中
(2)super可以用在构造方法中
语法:super(实参);【只能放在构造方法第一行,故不能和this();共存】
作用:通过子类的构造方法去调用父类的构造方法
目的:给当前子类对象的父类型特征赋值【并没有创建父类对象】
(3)super不可以使用在静态方法中
5.在java语言中只要创建了java对象,那么Object中的无参数构造方法一定会执行
*/
public class Text {
public static void main(String[] args) {
Manager boss = new Manager();
boss.work();
boss.m1();
}
}
2.实例
package text;
public class Employee {
String name = "张三";
public void work() {
System.out.println("员工在工作!");
}
}
package text;
public class Manager extends Employee {
String name = "李四";
public void work() {
System.out.println("经理在工作!");
}
public void m1() {
this.work();
work();
super.work();
System.out.println(this.name);
System.out.println(name);
System.out.println(super.name);
}
}