【BigData】Java基础_继承

 从上图我们可以看出,这就是一个继承,动物类是父类,猫、狼、狗可以继承父类的某些属性,例如:

动物类以下属性:

  • 眼睛
  • 耳朵
  • 鼻子

狼、猫、狗特有属性为其叫声

那么下面用Java代码来实现描述继承

代码

package cn.test.logan.day10;
/**
 * 父类 动物类
 * @author QIN
 *
 */
public class Animal {
    public String name;
    private String eye; // private 修饰的属性,不能被子类继承
    public String ears; 
    String age;// default属性,如果跨包,则子类也不能继承
    
    public void say(){
        
    }
    public void eat(){
        System.out.println("吃东西...");
    }
}
Animal.java
package cn.test.logan.day10;
/**
 * 用extends关键字来表示对指定的父类进行继承
 * 那么CatAnimal就具有了Animal父类中的属性和方法
 * @author QIN
 *
 */
public class CatAnimal extends Animal{
    // 重写父类的方法say
    @Override
    public void say(){
        System.out.println("喵喵喵");
    }
    public void catchMouse(){
        System.out.println("抓到老鼠了");
    }
    
}
CatAnimal.java
package cn.test.logan.day10;
/**
 * 测试类
 * @author QIN
 *
 */
public class Test {
    public static void main(String[] args) {
        // 第一种创建对象的方法:创建一个CatAnimal子类对象,用CatAnimal变量类型来引用
        CatAnimal catAnimal = new CatAnimal();
        
        // 第二种创建对象的方法:用父类型的变量来引用一个子类对象
        // 缺点:所创建的对象不能使用到子类的特别属性和方法
        
        //Animal catAnimal1 = new CatAnimal();
        //catAnimal.catchMouse(); //可以使用该方法
        //catAnimal1.catchMouse(); // 不可以使用
        catAnimal.name="小A";
        System.out.println(catAnimal.name);

        
        
        
        
    }
}
Test.java

猜你喜欢

转载自www.cnblogs.com/OliverQin/p/12114639.html