- 论坛徽章:
- 0
|
接口不是类,尤其是不能使用new运算苻实例化一个接口:
x=new Comparable(...) //ERROR
然而,尽管不能构造接口对象,却能声明接口变量.
Comparable x;//OK
接口变量必须引用实现了接口的类对象:
x=new Employee(...);//OK provided Employee implements Comparable
接下来,与使用instanceof检查一个对象是否属于某个特定类一样.也可以使用instance检查一个对象是否实现了某个特定的接口:
与可以建立类的继承关系一样,也可以扩展接口.这里允许存在多条从具有较高通用性的接口到较高专用性的接口的链.例如,假设有一个称为Moveable的接口.
public interface Moveable
{
void move(double x,double y);
}
可以以它为基础扩展以个叫做Powered的接口:
public interface Powered extends Moveable
{
double milesPerGallon();
};
尽管在接口中不能包含实例域或静态方法,但是可以包含常量,例如:
public interface Powered extends Moveable
{
double milesPerGallon();
double SPEED_LIMIT=95;
}
与接口中的方法一样,接口长的域也被自动的设为public static final
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/31513/showart_276732.html |
|