面向对象4:继承(extends)

继承(extends)
    1继承
    2语法
        public class 子类 exends 父类{
        }
        例:public class Dog extends Pet{
        }
    3继承的特点
        a.子类可以继承父类的非私有的属性和方法
        b.不能继承构造方法
        c.继承默认权限修饰符的方法和属性,
          子类和父类必须在同一个包中。
    4 super(父亲)
        super.属性名//表示方法父类的属性
        super.方法名(参数);//表示访问父亲的方法
        super(参数);//表示方法名父亲的结构函数
        注意:super()访问父类结构函数时,必需写在第一行
    代码块会执行在构造函数之前

    访问修饰符protected
        可以修饰属性和方法
        本类,同包,子类可以访问
        访问修饰符总结
         访问修饰符     本类     同包     子类     其他
        private私有的   √
        默认(friendly)√       √
        protected       √       √       √
        public        √          √       √       √


public class Pet {    
    private int age;
    //昵称
    private String name;
    //健康
    private int health;
    //亲密
    private int love;
    
    public Pet(){
        
    }
    
    public Pet(String name){
        this.name=name;
    }
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getHealth() {
        return health;
    }

    public void setHealth(int health) {
        this.health = health;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
    
    public void print(){
        System.out.println("宠物的自白:\n我的名字叫"+name+",健康值是:"+health+",和主人的亲密度是"+love);
    }

    public int getMaster() {
        // TODO Auto-generated method stub
        return 0;
    }

}

public class Dog extends Pet {
    //品种
        private String strain;
        
        public Dog(){
            
        }
        public Dog(String name,String strain){
            super(name);
            this.strain=strain;
        }
        public String getStrain() {
            return strain;
        }
        public void setStrain(String strain) {
            this.strain = strain;
        }
}

 

posted @ 2017-06-14 16:31  孤独患者xy  阅读(226)  评论(0编辑  收藏  举报