Java继承

本文介绍了Java中的类继承概念,阐述了其如何通过模拟种属关系提高代码复用性。讲解了Java的单继承限制,super关键字的使用,以及子类访问父类成员的不同方式。同时,讨论了同包继承中的权限问题,强调了私有成员虽物理上被继承但逻辑上不可访问,可能导致内存浪费。最后涉及方法的重写概念。
摘要由CSDN通过智能技术生成

定义:

        一个新类从现有的类中获得现有类的成员,这个现象叫做继承。

其中新类是现有类的派生类或者子类,现有类是新类的父类和基类

继承的优点:

        通过继承可以一层一层的模拟事物从一般到特殊(种属关系),通过创建一个种,再加上属差来模拟现实事物。

        这样就使得基类中的代码被子类中重用,提升效率。

每一个子类构造方法的第一条语句都是调用父类的构造方法,如果没写,则是默认调用父类的无参构造方法,因为构造方法只可以运行一次,所以若想调用父类的构造方法只可以写在子类构造方法的第一条语句。

特性:

        Java只支持单继承,一个子类最多有一个父类

Super:

        super相当于父类的对象,可以使用父类的域和方法,若子类与父类方法名相同,若想在子类中调用父类方法则可用super.方法名。

        父类的构造方法(super()实现)只能在子类的构造方法中调用。

子类访问父类的三种方式:

        1.在子类内部访问父类成员:

                可以直接访问父类非private成员。

        2.通过子类对象访问父类成员:

                可以直接访问非private成员。

        3.通过子类名访问父类成员:

                只可以访问父类非private并且是static修饰的成员。

同包继承的权限问题:

        当类都在同包内,子类不可以继承父类的私有成员(不论是在子类的内部使用,还是子类外部使用(创建对象使用))。

总结:私有成员不能被继承,但实际上私有成员在物理上被继承,但逻辑上不可以访问,这就引出一个问题,如果私有变量很多而又乱继承的话,浪费内存空间。

方法的重写:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值