如果改为abstract void draw()
public class square implements shape 就要变为
abstract class square extends shape 并且不可以实例化,直到其中的方法全部实现才可以
另外抽象类在继承的时候也会遇到麻烦
public class square implements shape 就要变为
abstract class square extends shape 并且不可以实例化,直到其中的方法全部实现才可以
另外抽象类在继承的时候也会遇到麻烦
谢谢
abstract void draw();
abstract void eraser();
// 新方法
public void callMe() {
draw();
erase();
}
}public class square extend shape{
public void draw(){}
public void eraser(){}
}public class circle extend shape{
...
}class test {
shape s = new square();
s.callMe();
}
Abstract Class有方法的默认实现,接口没有。
Abstract Class方法扩展不会对原有继承产生影响,Interface方法扩展会影响所有实现该接口的类。