Java接口
接口的定义
- Java接口是一系列方法的声明,是一些方法特征的集合。
Java接口的意义
- 一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
- 接口可以理解为一种特殊的类,里面全部是由全局常量和公共的抽象方法所组成。
- 接口是解决Java无法使用多继承的一种手段,但是接口在实际中更多的作用是制定标准的。
Java接口的特征
这里是引用
-
接口中不可以有实例域或静态方法,但是可以有常量。
-
不能使用new运算符实例化一个接口。
-
可以声明一个接口的变量,接口变量必须引用实现了该接口的类对象。
-
可以使用instanceof关键字检查一个对象是否实现了某个接口。
-
接口可以继承扩展另一个接口。
-
口中方法自动被设置为public,接口中的常量自动被设置为public static final 。
-
每个类只能拥有一个超类,但却可以实现多个接口。
-
接口中不存在已实现的方法。
-
实现接口的非抽象类必须实现其中的所有方法,抽象类可以不用实现。
-
标记接口中没有方法,它唯一的作用就是使用instanceof关键字进行类型检查。
作者:这是朕的江山
链接:https://www.jianshu.com/p/e4e139d05727
Java接口示例
这里是引用
/*人的抽象类
* */
abstract class People{
abstract void study();//学习的抽象方法
void sleep(){//睡觉的方法,这个类没有用abstract关键字修饰,所以子类是继承时可以不用重写。
System.out.println("睡觉");
}
}
/*行为接口
* */
interface Action{
void playGame();//玩游戏的方法
}
class User extends People implements Action{//继承people抽象方法,实现Action接口
@Override
void study() {//继承People父类,重写study方法
// TODO Auto-generated method stub
System.out.println("学习");
}
@Override//实现Action接口的playGame方法
public void playGame() {
// TODO Auto-generated method stub
System.out.println("玩游戏");
}
}
public class Test13 {
public static void main(String[] args) {
User user=new User();//实例化User对象
user.study();//调用子类继承父类的重写的方法
user.playGame();//调用子类实现接口的实现方法
user.sleep();//调用父类的方法
}
}
链接:ttps://www.cnblogs.com/haitang/p/4756012.html