继承的理解和应用

46.继承的理解和应用

  • 继承与真实世界相似

类似于基因遗传(只有一个父亲)

符合is—a关系的设计使用继承(只有一个父类)

  • 继承是Java实现代码重用的重要手段之一

使用继承优化设计,将子类共有的属性和行为放到父类中(将重复的代码提取到父类),减少代码量,方便修改代码

继承是Java中实现代码重用的重要手段之一。Java中只支持单根继承,即一个类只能有一个直接父类。

子类无法继承父类的private成员

同包的子类可以继承父类中默认修饰符修饰的成员,不同包的子类不可以继承父类中默认修饰符修饰的成员(继承默认权限修饰符修饰的属性和方法,但子类和父类必须在 同一个包里)

子类可以继承父类的protected成员,不管父子类是否在同一个包(继承public和protected修饰的属性和方法,不管子类和父类是否在同一个包里)

//Person类

package cn.com.ooa1;
//父类
public class Person {
    private int age;
    protected String name;
    char sex;
    public String address;
}

//Student类

package cn.com.ooa1;
//子类
public class Student extends Person {
    public void m1(){
        //子类可以继承父类的protected成员,不管父子类是否在同一个包
        System.out.println(name);
        /*//子类无法继承父类的private成员
        System.out.println(age);
        */
        //同包的子类可以继承父类中默认修饰符修饰的成员
        System.out.println(sex);
        System.out.println(address);
    }
}

//Teacher类

package cn.com.ooa2;

import cn.com.ooa1.Person;
//子类
public class Teacher extends Person {
    public void m1(){
        //子类可以继承父类的protected成员,不管父子类是否在同一个包
        System.out.println(name);
        /*//子类无法继承父类的private成员
        System.out.println(age);*/
        /*//不同包的子类不可以继承父类中默认修饰符修饰的成员
        System.out.println(sex);*/
        System.out.println(address);
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值