Java 语法 索引 ----- 继承(Inheritance) 和重写(Overriding)

// Superclass (parent class)
class Fruit{
    public String flavor;
}

// Subclass (child class)
class Apple extends Fruit {
    public String variety;
}

//downcasting
Apple a = new Apple();
Fruit f = a;

Apple c = (f instanceof Apple) ? (Apple)f : null;

 

重写

class Rectangle{
    public int w = 10, h = 10;
    public int getArea() { return w * h; }
}

class Triangle extends Rectangle{
   //调用父构造函数
   public Triangle() { super(); }
   @Override
    public int getArea() { return w * h / 2; }
}

Rectangle o = new Triangle();
o.getArea(); // (50) calls Triangle‘s version

如果用关键字 final, 比如:  public final int getArea() { return w * h; } 这个方法不能被子类重写.

 

 

参考文献: Java Quick Syntax Reference by Mikael Olsson

Java 语法 索引 ----- 继承(Inheritance) 和重写(Overriding),古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。