接口概念和作用
接口语法
interface 接口名{
//公有静态常量、抽象方法
}
接口特点
接口中只能存放静态常量和抽象方法
java接口是对功能的拓展
通过实现接口,java类可以实现多实现
一个类可以同时继承(extends
)一个父类并且实现(implements
)多个接口
接口与接口之间可以使用 extends 实现继承
接口与抽象类的区别
抽象类和具体实现之间是一个继承关系,也就是如果采用抽象类的方式,则父类和子类在概念上应该是相同的 is-a
接口和实现类在概念上不要求相同,接口只是抽取相互之间没有关系的类的共同特征,而不去关注类之间的关系,它可以使没有层次关系的类具有相同的行为
抽象类是对一组具有相同属性和行为的逻辑上有关系的事物的一种抽象,而接口则是对一组具有相同属性和行为的逻辑上不相关的事物的一种抽象
测试用例
interface xingwei{
abstract void eat();
abstract void drink();
}
class man implements xingwei{
public void eat() {
// TODO Auto-generated method stub
System.out.println("男人吃");
}
public void drink() {
// TODO Auto-generated method stub
System.out.println("男人喝");
}
}
class dogman implements xingwei{
public void eat() {
// TODO Auto-generated method stub
System.out.println("公狗吃");
}
public void drink() {
// TODO Auto-generated method stub
System.out.println("公狗喝");
}
}
public class Test {
public static void main(String[] args) {
new man().eat();
new man().drink();//new的返回值是对象
}
}
运行结果
男人吃
男人喝