文档章节

接口

 烟中泪
发布于 2017/02/28 16:26
字数 281
阅读 2
收藏 0

定义一个接口,要使用interface关键字。

  • 接口中的变量固定修饰符: public static final
  • 接口中的方法固定修饰符: public abstract

类要操作接口,必须使用implements关键字。当A类实现了B接口时,对B接口中的方法有两种处理方式:

  1. A实现接口中的所有抽象方法;
  2. 把A类定义为抽象类。
public interfa B{
        public static final int X = 5;
        
        public abstract void run();
        public abstract void go();
}
public class implements B {
        public void run() {
        }
        public void go() {
        }
}

或者

public abstract class A implements B {
        //可以不实现B接口中的方法
}

 

抽象类和接口的区别:

  1. 抽象类只能被继承,而且只能单继承。接口需要被实现;而且可以多实现。
  2. 抽象类中可以定义非抽象方法,子类可以直接继承使用;接口中都有抽象方法,需要子类去实现。
  3. 抽象类使用的是  is a 关系;接口使用的 like a 关系。
  4. 抽象类的成员修饰符可以自定义;接口中的成员修饰符是固定的。全都是public的。

© 著作权归作者所有

共有 人打赏支持
粉丝 0
博文 25
码字总数 8535
作品 0

暂无文章

play framework 如何支持多数据源

有段时间没有写博客了,但今天又写一篇了,主要是因为这事有一丝自己的思考和动手实践,所以就记录下来了。 现有的问题: play 1.2.4 两台数据库服务器,但是play1.2.4 并不支持同时连接两台...

tuerqidi
17分钟前
0
0
Mysql only_full_group_by解析

查看当前数据库模式: select @@sql_mode; 原因: mysql 5.7中的sql_mode的值中包含'ONLY_FULL_GROUP_BY'; 处理:执行以下SQL set GLOBAL sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,N......

年轻的中年大叔
19分钟前
1
0
防止表单重复提交

1:前端方式(治标不治本) $("#admin-role-save").click(function(){//admin-role-save为submit的idvar ts=$(this);var ts_old_val=ts.val();ts.val("提交中....");ts.att...

uug
19分钟前
1
0
保持屏幕常亮

getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 在act的created方法中调用即可,一般是播放视频的时候......

Carbenson
19分钟前
1
0
智能合约实施指南

与区块链技术一样,智能合约在商业领域也非常有价值。 为了让我们的读者彻底了解智能合约是什么以及它们如何影响现代商业的交易方式,我们准备了本指南。 集中商业模式正在给去中心化的模式让...

geek12345
22分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部