java将接口的概念提升为独立的结构,体现了接口与实现分离。java接口允许多个类提供相同的功能,也允许一个同时实现多个接口。
java的接口与抽象类十分相似。
java与抽象类中的区别:
1.一个类可以实现多个接口,但却只能最多继承一个抽象类;
2.抽象类可以包含具体的方法;接口的所有方法都是抽象的;
3.抽象类可以声明很实用字段;接口则不能,但可以创建静态的final常量;
4.抽象类中的方法可以是public、protected、private或者默认的package;接口的方法都是public;
5.抽象类可以定义构造函数;借口不能。
public
interface RocketSim{
abstract double getMass();
public double
getThrust();
void setSimTime(double
t);
}
在上述的一个接口,虽然只有getMass()方法被显示声明为抽象,只有getThrust()被显示声明为公开,但三个方法都是抽象方法和公开方法。
java接口的优势在于它限制了对象之间的协作,这种约束其实提供了很大的自由。即使实现接口的类的实现发生了巨大的变化,接口的客户端任然可以不受影响。
原文:http://www.cnblogs.com/xianyuyehe/p/3614775.html