1.接口的格式
接口关键字interface表示
格式:interface 接口名{}
类实现接口用implements表示
格式:class 类名 implements 接口名{}
接口不能实例化
要用多态的方式,由子类进行实例化,也是多态的一种,接口多态。
接口的子类:是抽象类或者是重写接口中的所有抽象方法
//接口例子:
interface Animal{
public abstract void show();
}
class Cat implements Animal{
public void show() {
System.out.println("猫吃鱼");
}
}
public class Practice1 {
public static void main(String[] args) {
Animal a=new Cat();
a.show();
}
}
2.接口的特点:
/*
* 接口成员的特点:
* 成员变量:
* 不可以使用变量,只能用常量;
* 默认的修饰符:public static final修饰为常量
* 成员方法:只能使用抽象方法
* 默认的修饰符:public abstract//即接口中的所有方法都默认为为抽象方法
* 构造方法:接口不提供任何构造方法
*/
interface Usb{
int num1=10;
public final int num2=1;
public void show();
//接口没有构造方法,也不能提供构造方法
// public Usb() {
//
// }
}
class PC implements Usb{
public void show() {
System.out.println("传输数据");
}
}
public class Practice2 {
public static void main(String[] args) {
Usb usb=new PC();
// usb.num1=10;//默认为常量,不能被修改;
System.out.println(usb.num1);
usb.show();
}
}
3.接口的继承特点
package 接口;
class A{
}
interface Inter1{
}
interface inter2{
}
//接口可以继承接口
//可以单继承也可以多继承
interface Inter3 extends Inter1{
}
//类在继承某个类时,还可以实现多个接口
class B extends A implements Inter1,Inter3{
}
public class Practice3 {
}