接口的基本语法
- 使用 interface定义;
- 接口当中的方法都是抽象方法;
- 接口当中的方法都是public权限(接口中的方法,写不写public修饰符,都是public权限,别的地方不行哦);
可以把接口理解成一个更加纯粹的抽象类,因此它也不能生成对象。这要怎么办呢?回想抽象类的处理方法,可以用一个类来继承(接口中叫实现)它,从而在子类中生成对象。
package test;
interface Interfacefather {
public void read();
public void write();
}
public class Interface implements Interfacefather{
public void read() {
System.out.println("Phone --> Read");
}
public void write() {
System.out.println("Phone --> Write");
}
public static void main(String[] args) {
Interface f=new Interface();
//不能这样来声明一个接口对象Interfacefather t=new Interfacefather();
//通过子类实例化上转型赋值给接口
Interfacefather t=f;
t.read();
f.read();
}
package test;
interface Interfacefather {
public void read();
public void write();
}
interface WiFi {
public void open();
public void close();
}
public class Interface implements Interfacefather,WiFi{
public void read() {
System.out.println("Phone --> Read");
}
public void write() {
System.out.println("Phone --> Write");
}
//实现WiFi中的抽象方法
public void open() {
System.out.println("WiFi --> Open");
}
public void close() {
System.out.println("WiFi --> Close");
}
public static void main(String[] args) {
Interface f=new Interface();
//不能这样来声明一个接口对象
//Interfacefather t=new Interfacefather();
//不过可以通过子类实例化上转型赋值给接口
Interfacefather t=f;
t.read();
f.read();
WiFi k=f;
k.close();
f.close();
}
}}
package test;
interface Interfacefather {
public void read();
public void write();
}
interface WiFi {
public void open();
public void close();
}
interface SbFi extends Interfacefather,WiFi {
public void piu();
}
public class Interface implements SbFi{
//实现Interfacefather中的抽象方法
public void read() {
System.out.println("Phone --> Read");
}
public void write() {
System.out.println("Phone --> Write");
}
//实现WiFi中的抽象方法
public void open() {
System.out.println("WiFi --> Open");
}
public void close() {
System.out.println("WiFi --> Close");
}
//实现SbFi中的抽象方法
public void piu() {
System.out.println("WiFi -->phone");
}
public static void main(String[] args) {
Interface f=new Interface();
//不能这样来声明一个接口对象
//Interfacefather t=new Interfacefather();
//不过可以通过子类实例化上转型赋值给接口
SbFi t=f;
t.read();
t.close();
t.piu();
}
}