面向对象 【 接口类 】 特征
声明格式:
[访问修饰符] interface 接口名 [extends 父接口1,父接口2 ...]
{
常量定义;
方法定义;
}
定义接口的详细说明:
1.访问修饰符:只能是public或者默认。
2.接口名:和类名采用相同的命名机制。
3.extends:接口可以多继承。
4.常量:接口中的属性只能是常量,总是:public static final修饰。不写也是。
5.方法:接口中的方法只能是:public abstract。省略的话,也是public abstract。
要点:
1.子类通过implements来实现接口中的规范。
2.接口不能创建实例,但是可用于声明引用变量类型。
3.一个类实现了接口,必须实现接口中所有的方法,并且这些方法只能是public的。
4.JDK1.7之前,接口中只能包含静态常量、抽象方法,不能有普通属性、构造方法、普通方法。
代码示例:
public interface MyInterface
{
/*public static final*/ int MAX_AGE = 100;
/*public abstract*/void test01();
}
class MyClass implements MyInterface
{
@Override
public void test01() {
System.out.println("MyClass.test01()");
}
}
代码示例2:
/*
* 测试接口和实现类
* */
public interface TestInterface
{
public static void main(String[] args)
{
Volant v = new Birdman();
v.fly();
}
}
/*
* 飞行接口
* */
interface Volant
{
int FLY_HEIGHT= 1000;
void fly();
}
//善良接口
interface Honest
{
void helpOther();
}
class Angel implements Volant,Honest
{
@Override
public void helpOther()
{
System.out.println("Angel.helpOther");
}
@Override
public void fly()
{
System.out.println("Angel.fly()");
}//实现类可以实现多个父接口!
}
class GoodMan implements Honest
{
@Override
public void helpOther() {
System.out.println("GoodMan.helpOther()");
}
}
class Birdman implements Volant
{
@Override
public void fly() {
System.out.println("Birdman.fly()");
}
}
执行结果:
Birdman.fly()
浙公网安备 33010602011771号