接口
来源:互联网 发布:union摄影软件安卓版 编辑:程序博客网 时间:2024/05/21 17:57
接口:
概述:
有些类中的成员会具有其他的一些功能,比如会跳高的猫,狗等,于是JAVA就提供了一个关键字:interface(接口)格式:
interface 接口名{}
特点:
接口中的方法只能是抽象方法。public abstract void 方法名();有时候会省略 abstract
注意:
接口中没有构造方法 接口也不能实例化如何实例化:
用接口多态来实例化接口名 at = new 类名();
接口的子类:
与接口是实现关系:关键字:implements 是非抽象类class 子类名 implements 接口名{
}
接口的子类可以继承类,也可以同时继承类,实现接口。
代码:
interface Inter{int num = 10 ;
public final int num2 =20 ;
public static final int num3 = 30 ;
//成员方法:只能抽象方法:
public abstract void show() ;
}
//接口的子实现类:InterImpl:接口名+Impl
class InterImpl implements Inter{
public void show() {
System.out.println(num);
}
}
//测试类
public class InterfaceDemo2 {
public static void main(String[] args) {
//创建对象:接口多态的形式
Inter i = new InterImpl() ;
i.show;
System.out.println(Inter.num3);//如果一个变量被static修饰,可以使用类名,接口名调用
System.out.println(Inter.num2);
System.out.println(Inter.num);
}
}
接口和抽象类的区别:
接口:
成员变量:修饰符:public static final :只能是常量成员方法:public abstract 只能是抽象类
构造方法:没有构造方法
抽象类;
成员变量:可以是常量,也可以是变量成员方法:可以是抽象类,也可以是非抽象类
构造方法:可以有构造方法(有参/无参)(对数据进行初始化)
类与接口:
类与类:
只能是单继承,或者多层继承接口与接口:
继承关系,可以是单继承也可以是多继承类和接口:
实现关系,可以是单实现也可以是多实现并且继承一个类的同时可以实现多个接口
代码:
interface Monther{public abstract void show();
}
interface Father{
public abstract void show2();
}
interface Sister extends Father,Monther{}
//Son类
//class Son implements Monther{ //单实现
class Son extends Object implements Monther,Father{
@Override
public void show() {
System.out.println("show Son...");
}
@Override
public void show2() {
System.out.println("show2 Son...");
}
}
//测试类
public class InterfaceDemo3 {
public static void main(String[] args) {
//使用接口多态实例化
Father f = new Son();
f.show2();
// f.show();
Monther f2 = new Son();
f2.show();
// f2.show2();
}
}