Java之关键字super

Super 关键字

1. super 不是引用类型,super中存储的不是内存地址,super指向的不是父类对象

2. Super代表的是当前子类对象中的父类型特征

3.什么时候使用super?

  子类和父类中都有某个数据/方法,例如子类和父类中都有name这个属性,

如果要在子类中访问父类中的name属性,则用super.name

4.super可以用在什么地方?

Super可以用在成员方法中,不能使用在静态方法中;

Super可以用在构造方法中,

通过子类的构造方法去调用父类的构造方法,目的在于给当前子类对象的父类型特征赋值

Super()调用了父类中的构造方法,但并不会创建父类对象

语法:super(实参);

作用:通过子类的构造方法去调用父类的构造方法

语法规则,一个构造第一行如果没有this(),也没有显示的去调用super();系统会默认调用super()

Super()和this()不能共存哈

5.this 和super相同,都不能用在静态上下文中

Employee.java

Public classEmployee{

String name=”B”;

//成员方法

Public void work{

System.out.println(“员工在工作!”);

}

}

Manager.java

Public classManager extends Employee{

String name=”A”;

//子类将父类中的work方法重写了

Public void work{

System.out.println(“经理在工作!”);

}

Public void m1{

//this .work();等同于work();

super.work()//需求是:需输出员工在工作!

 }

System.out.println(this.name);//输出B

System.out.println(name); //输出B

System.out.println(super.name);//输出A

}

Test01.java

Public classTest01{

Public static voidmain (string [] args){

Manager m=newManager();

m.m1();

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值