Java继承浅析思考

java三大特性:

  1. 继承
  2. 封装
  3. 多态

    类是对对象的抽象,继承是对某一批类的抽象,从而实现对现实世界更好的建模。

    有利于提高代码的复用,关键词是extends,只支持单继承。
    简单说:我继承了你,你的就是我的,我的还是我的

    如果定义了一个类,没有调用extends,则它的父类是java.lang.Object

  4. 在子类中可以根据需要对基类中继承来的方法进行重写。

  5. 重写必须和被重写方法具有相同方法名称、参数列表和返回类型。
  6. 重写方法不能使用比被重写方法更严格的访问权限。

    重写:toString方法

    • 默认返回:包名+类名+@+哈希码(根据对象内存位置生成,唯一不重复)
    • 可以重写
        public String toString(){
            return getClass().getName()+"@"+Integer.toHexString(hashCode());
            //原Object类的toString方法



        public String toString(){
            return "你好!";
            }                   //重写后的toString方法 

super是直接父类对象的引用,可以通过super来访问父类中被子类覆盖的方法或属性。

注意点:

  1. super在构造方法中永远处于第一行;
  2. 如果实现了对父类构造方法的重写,那么,在对子类对象的生成时,构造方法的调用顺序应是先父类再子类;

顺便提一下继承与组合的关系:

  • “is-a”关系使用继承
  • “has-a”关系使用组合
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值