Interface 和 Abstract 方法大同小異, 但是主要是要符合ISP(Interface Segregation Priciple),
Abstract是為了讓子類別還具備保留父類別的抽象概念,
而因為java 不能多重繼承, 也是為了讓子類別有單獨承接父類別的概念,
但是為了有多重繼承的效果, 也就有了interface替abstract class添加新功能/屬性的概念
implements Interface 要override裡面的method
public interface DemoInterface
{
final int x=0;
void a();
void b();
void c();
}
extends Abstract 要override裡面的abstract method,
而Interface 不能描述方法, Abstract 則可以如a()
而Interface 不能描述方法, Abstract 則可以如a()
public abstract DemoAbstract
{
int y;
void a(){...};
abstract void b();
abstract void c();
}
沒有留言:
張貼留言