接口(interface)那点事
来源:互联网 发布:神探夏洛克第四季知乎 编辑:程序博客网 时间:2024/05/22 11:44
1、接口(interface),在 java中有这个类型哦,这是语法哦。
public interface MyInterface {}语法还是很清晰的哦, 类的关键字是class、而接口改为interface即可哈。
2、接口(interface)与 接口(API) ?
答:相信大家伙一直没明白吧,老话再讲,记得中文博大精深,刚好interface与API都翻译为接口,而API全称是应用程序接口(Application Program Interface)。
API昵指的是提供给他人调用的方法或者函数,具体一点讲昵就是 public 的 方法。而interface就是java中规定一种数据类型(数据结构、对象组合)。
3、interface的小小规则
a、interface中可以有变量,而且它必须是静态(static)的、而且必须是final的。
public interface MyInterface {public String name = "test"; //这里隐藏了static final ,你不写,编译器也会给你默认加上static 与 final,相当于简写啦}既然说是static与final的变量,怎么不写编译器也不报错昵?坑?
答:这里要插播一个思想,那就是隐式与显式的思想。因为interface要求必须是static加上final。所以你不写也没关系,默认(隐式)就会给你加上static与final。
public interface MyInterface {public static final String name = "test"; //显式的写上static与final 也一样啦,人啊越进步越懒,谁老想写啊}插播:这下子知道为啥接口的变量,必须要你初始化啦吧?哈哈,final嘛,所以嘛哈哈。。
b、interface里面的方法,必须全部是抽象方法
public interface MyInterface {public static final String name = "test";public void walk(); //我是抽象方法,此处省略了abstractpublic void jump(); //我是抽象方法}疑问:怎么回事?抽象方法不写abstract也可以?
答:哈哈,刚才上面就讲啦?语法已经规定所有方法必须是抽象方法,所以嘛你可以不写abstarct,默认(隐式)编译器会给你加上abstract,呵呵
public interface MyInterface {public static final String name = "test";public abstract void fly(); //也可以显示的加上abstract,但人啊就是越来越懒}
public interface MyInterface { static final String name = "test"; //默认给你加上public的,放心哥们 void walk(); //抽象方法也同理,隐式的有public的哦 void jump(); abstract void fly();}隐式与显式,真是精髓思想,记得人很懒………………
d、接口可以继承一个接口,想不到吧,接口可以继承(扩展)多个、多个、多个(重要的事说三遍)接口。
public interface MyInterface extends FirInterface, SecInterface, ThirdInterface{ static final String name = "test"; void jump(); abstract void fly();}你没看错,还用的关键字extends,哈哈,java牛逼呀。。接口可不能extends一个类、也不能implements一个接口。接口可不能extends一个类、也不能implements一个接口。接口可不能extends一个类、也不能implements一个接口。(重要的事情再说三遍)。。。
e、有了接口我们怎么用啊? 我们要将我们的类去实现接口,要用到implements关键字啦
public class HelloInterface implements MyInterface {@Overridepublic void quickWalk() {// TODO Auto-generated method stub}@Overridepublic void jump() {// TODO Auto-generated method stub}@Overridepublic void fly() {// TODO Auto-generated method stub}}答:用implements,将抽象方法进行具体的实现,只要你implements(实现)一个接口(interface),就必须将抽象方法进行(Override:中文称为重写)。
插播:extends与implements我将单独拉出来两篇笔记哦!!java语法:单继承、多实现、这算剧透嘛?
0 0
- 接口(interface)那点事
- 接口编程那点事
- 接口编程那点事
- 关于使用Visual C++ 编写API(Application Programming Interface)函数时编译那点事
- 内部类/内部接口那点事
- sizeof ()那点事
- 说说显示器接口那点事!VGA、DVI、HDMI,DP
- 接口(interface)
- 接口(interface)
- 接口(Interface)概念
- 接口(interface)
- 接口(interface)
- 接口(interface)
- 6.5 接口(interface)
- 接口(interface)
- 接口(interface)
- 接口(interface)
- java接口(interface)
- hdoj3427Clickomania【记忆化搜索】
- 驻扎。
- 机器学习中的 precision、recall、accuracy、F1 Score
- 解决select2 在easyui dialog中不显示下拉列表的问题
- POJ 1163 The Triangle
- 接口(interface)那点事
- android Wearable-Accessing the Wearable Data Layer and Syncing Data Items
- ios7以后如何实现App长时间后台运行
- C语言中的顺序点
- 装饰模式(Decorator)
- Spring+EhCache缓存实例(详细讲解+源码下载)
- wordpress域名迁移相关配置
- u699The Falling Leaves
- Excel添加SHA256计算函数