1.接口中定义的属性必须是public static final的,而接口中的方法则必须是public abstract的,因此这些修饰符可以部分或全部省略。一个类要想实现某接口中的方法时,必须得在方法返回值前加public。
2.接口中定义的属性的值在实现类中不能被更改。
3.一个类只能实现某个接口,不能继承某个接口。
4.一个类可以实现多个接口,但一个类不能继承多个类。
5.但接口可以继承接口。
6.接口不但可以继承接口,而且可以继承多个接口,即接口允许实现多继承。
7.如果一个类只实现了一个接口的部分方法,则该类必须声明为抽象类。
8.一个类可以在继承一个父类的同时实现一个或多个接口, 但extends关键字必须在implements之前。
9.不可以new接口对象,但可以定义一个接口引用类型的变量,并将其指向实现结构的对象,达到多态的目的!
interface It
{
void f();
}
class A implements It
{
public void f()
{
System.out.printf("AAAA");
}
public void g()
{
}
}
class rain
{
public static void main(String[] args)
{
//int i;
It it;
it = new A(); //把接口的一个实现类的地址发送给it(接口的引用), it就指向了它的实现类,
//这是一个多态的例子
it.f();
//it.g(); //error 通过接口的引用,只能调用子类从父类继承过来的成员,不能调用子类所特有的
//It it2 = new It(); //error
}
}