抽象类和抽象方法都需被继承或覆盖,所以不能被private,final修饰。
package cxy;
/*
*
* */
public class ExtExample {
public static void main(String[] args) {
SuperClass s = new SubClass();
System.out.println(s.getValue());
System.out.println(s.getSum());
}
}
abstract class SuperClass{ //抽象类,
int i=5;
public SuperClass(){
System.out.println("父类构造器");
}
public int getValue(){
return i;
}
abstract public int getSum(); //没有给出实现的方法称为抽象方法。
}
class SubClass extends SuperClass{ //如果没有将超类中的所有抽象方法都实现,那么该子类也只能是抽象类。
int j;
public SubClass(){
this(-3);
}
public SubClass(int i){
this.j = i;
System.out.println("子类构造器");
}
public int getValue(){
return j;
}
public int getSum(){
return j+i;
}
}