您的位置:首页 > 其它

继承 子类对父类方法的覆盖 构造方法的继承 super

2015-09-06 21:18 405 查看
方法的名称参数必须完全相同

只满足名称相同,就不是覆盖是重载

原则上如果覆盖成功,那么使用子类对象时,方法的所有属性都以覆盖后的为准

修饰符完全相同的覆盖

子类oa.a 调用的是子类的a的方法

1子类的方法的访问权限可以与父类的不相同,但只允许权限更宽松,而不允许更严格

2返回值的数据类型不相同的情况 

是不行的 错误的 编译错误

3final修饰符的不同

若父类方法是final 子类是不能覆盖的 但父类不是final 子类可以是final

4不允许父类和子类方法的static修饰符发生变化

构造方法的继承机制

即使子类没有写调用父类的无参构造方法 ,子类也会自动调用

不会自动调用无参构造方法

super

super的一般用法

super.变量名

super.方法名

super.(参数列表)

注意super只能在子类中用于调用父类的成员或构造方法

1super可以引用父类的成员

2super引用被覆盖的父类方法

子类中  showMsg()调用本类的方法

              super.showMsg()调用父类的方法

使用super调用父类的构造方法

1它只能用在构造方法中

2它只能是第一条执行语句

3一个构造方法中只能有一条super语句

public class A extends B{

public A(){

super(100); 调用父类带参数的构造方法

}

}

一旦显示地使用super来调用父类的构造方法,系统就不会再自动调用父类无参数的构造方法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: