前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java基础——继承

Java基础——继承

作者头像
羊羽shine
发布2019-05-28 13:22:35
6400
发布2019-05-28 13:22:35
举报
文章被收录于专栏:Golang开发
关键字:extends

在java中使用extends关键字来表示继承关系。 当创建一个类时,总是在继承,如果在类中声明中没有extends关键字,就总是隐式地从java.lang.Object类继承而来的,所以Object是所有类的元类,

代码语言:javascript
复制
class 子类名称 extends 父类名称

例如:

代码语言:javascript
复制
class Person {
    public Person() {
    }
}
class Man extends Person {
    public Man() {
    }
}

(1)只允许单继承 不可以多继承 (2)允许多层继承 (3)除了Object外,所有类实际上都会存在一个父类。

继承中的修饰符

privite修饰的字段无法被子类访问 protected修饰的字段可以被子类访问

继承中的成员变量

当子类继承了某个类之后,便可以使用父类中的成员变量,但是并不是完全继承父类的所有成员变量。涉及到成员变量的修饰符,具体的原则如下: (1). 能够继承父类的public和protected成员变量;不能够继承父类的private成员变量; (2). 对于缺省修饰符的成员变量,如果子类和父类在同一个包下,则子类能够继承;否则,子类不能够继承; (3). 对于子类可以继承的父类成员变量,如果在子类中出现了同名称的成员变量,则会发生隐藏现象,即子类的成员变量会屏蔽掉父类的同名成员变量。如果要在子类中访问父类中同名成员变量,需要使用super关键字来进行引用。

继承中的方法

(1) 能够继承父类的public和protected成员方法;不能够继承父类的private成员方法; (2) 对于缺省修饰符的成员方法,如果子类和父类在同一个包下,则子类能够继承;否则,子类不能够继承; (3) 对于子类可以继承的父类成员方法,如果在子类中出现了方法名称相同的成员方法,则称为覆盖,即子类的成员方法会覆盖掉父类的同名成员方法。如果要在子类中访问父类中同名成员方法,需要使用super关键字来进行引用。 (4)子类访问权限必须大于等于父类。 (5)类方法static是隐藏父类的方法。

继承中的构造器

(1)子类是不能够继承父类的构造器,但是要注意的是,如果父类的构造器都是带有参数的,则必须在子类的构造器中显示地通过super关键字调用父类的构造器并配以适当的参数列表。 如果父类有无参构造器,则在子类的构造器中用super关键字调用父类构造器不是必须的,如果没有使用super关键字,编译器会自动调用父类的无参构造器。

关键字:super

调用父类的方法或者成员

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.05.25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关键字:extends
  • 继承中的修饰符
  • 继承中的成员变量
  • 继承中的方法
  • 继承中的构造器
  • 关键字:super
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档