Java 继承的简单例子

  •  三个类,爷爷类,父亲类,儿子类;父亲类继承爷爷类,儿子类继承父亲类
  • 私有方法,构造方法不能被继承
  • 子类可以调用形参为父类的方法

1. 爷爷类

package JiCheng;

public class Gf {
    
    // 成员变量
    String name;
    
    // 构造方法
    // 构造方法是构造当前类实例的特殊方法,不能被继承
    // 但是子类可以使用super关键字来调用父类的构造方法,用于初始化父类各项
    Gf(){
        
    }
    
    public void a1() {
        // 公有方法,可继承
    }
    
    private void b1() {
        // 私有方法,不可继承,但可以想办法调用它
    }
    
    
}

2. 父亲类

package JiCheng;

public class F extends Gf{
    // 父亲类继承爷爷类
    
    // 成员方法-公有
    public void a2() {
        
    }
    
    // 公有方法
    public void b2() {
        
    }
}

3. 儿子类

package JiCheng;

public class Z extends F{
    // 儿子类继承父亲类
    public void a3() {
        
    }
}

4. 测试demo

package JiCheng;

public class Extends_Demo01 {

    public static void main(String[] args) {
        Gf gf = new Gf(); // 爷爷类
        F f = new F();     // 父亲类
        Z z = new Z();   // 儿子类
        
        // f可以调用爷爷类公有的方法a1,但不能调用私有的方法b1
        f.a1();
        
        // z可以可以调用爷爷类的a1,父亲类的a2,b2
        z.a1();
        z.a2();
        z.b2();
        
        // z继承了爷爷类的成员变量
        z.name = "zzg";
        // 儿子类实例可以调用形参为爷爷类的方法
        System.out.print(getName(z));
    
    }
    
    // 形参为爷爷类,但由于继承的原因,父亲类和儿子类都可以调用
    public static String getName(Gf g) {
        return g.name;
    }

}
原文地址:https://www.cnblogs.com/ZZG-GANGAN/p/13821069.html