java中的接口_浅析java中的接口

接口相当于特殊的抽象类,定义方式、组成部分与抽象类类似。

interfacee MyInterface{

public static final String FIELD="value";

public abstract void method();

}

没有构造方法,不能创建对象,但是抽象类是可以创造对象的

只能定义:公开静态常量、公开抽象方法(不过一般不需要声明,他们自己会默认)

1.定义接口A//此时,这个接口,无法去new出来,那么需要后面工作

2.用一个C类implements 去实现接口 public class C implements A

3.A a1=new C(); 最后一步就可以创建个对象a1

接口和抽象类区别

相同:可编译成字节码文件。

不能创建对象。

可以作为引用类型。

具备Object类中所定义的方法。

接口特有内容:所有属性都是公开静态常量,隐式使用public static final修饰。

所有方法都是公开抽象方法,隐式使用public abstract修饰。

没有构造方法、动态代码块、静态代码块。

java是单继承,如果要实现多种能力,无法多继承,那么接口的 出现就解决了这一点

接口的定义:代表了某种能力。

方法的定义:能力的具体要求。

举个例子:把“飞”这个能力赋予“人”

值得一提的是,在接口中,是抽象的方法,那么默认abstract,不需要在里面把方法写清楚,因为抽象类存在的意义就是让子类去不断重写

接口flyable:写方法method,定义飞,不需要写,有个头部就行

类person:person去implements这个flyable接口

测试主类test:

主类就是两种,一种是用person p-=new person()来创建对象

第二张利用多态的方法,flyable f=new person()来创建对象,但是这样的声明方式,f这个对象只能用flyable这个接口里面的方法,如果同时继承了fire这个接口,无法使用fire里面的方法

常量接口:在这个接口里,只有常量

public interface ConstInterface{

String CONST1="aaa";

String CONST2="bbb";

String coNST3="ccc";

}

public class TestconstInterface{

public static void mai(string[] args){

if(ConstInterface. coNST1. equals("aaa")){

...........

}

}

标记接口:标记接口中没有包含任意成员,仅仅用作标记。

·Serializable(可序列化)·Cloneable(可克隆)

接口回调

定义了usb接口包含一个service抽象方法

分别定义三个类进行重写service:

upan,ufan,mouse

定义一个master类,用usb接口 定义三个对象u1 u2 u3(就是usb,没有具体指定哪个,你也不知道),一个run方法,里面分别u1.service()调用

主类test,new一个使用者master m,去把之前的三个u1 u2 u3指定类型

master m=new master();

usb mouse=new mouse();

usb upan=new upan();

usb ufan=new ufan();

m.u1=mouse;

m.u2=upan;

m.u3=ufan;

m.run();

总结:

什么是接口:微观:接口是一种能力和约定。

宏观:接口是一种标准。

接口与类的异同:没有构造方法,仅可定义公开静态常量与公开抽象方法。

接口的应用Java为单继承,当父类的方法种类无法满足子类需求时,可实现接口扩充子类能力。

接口的规范任河类在实现接口时,必须实现接口中所有的抽象方法,

否则此类为抽象类。 实现接口中的抽象方法时,访问修饰符必须是public。

什么是常量接口将多个常用于表示状态或固定值的变量,以静态常量的形式定义在接口中统一管理。

什么是接口回调先有接口的使用者,后有接口的实现者。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值