java中interface使用
1.在C++中,类可以多重继承,一个类可以有好几个父类,但是在java中,类是不允许多重继承的,为了多重继承,java中出现了接口(interface)的定义。接口是可以多重继承的,接口的关键词是:interface。
如:
定义接口A:
interface A
{
...
}
定义接口B:
interface B
{
...
}
此时,接口C可以继承A和B:
interface C extends A,B
{
...
}
同时类也可以同时实现多个接口
如:
class Test implements A,B
{
...
}
2.接口中只有2中类型的成员,一种是数据成员,一种是方法成员。其中数据成员都是final类型的,是常量,在定义的时候要设置好的,以后不能修改。方法成员全是抽象方法,实现接口的类要全部实现这些抽象方法。
3.接口不能直接实例化,只能通过其子类进行实例化。
interface Usb
{
public abstract void start();
public abstract void stop();
} class Mp3 implements Usb
{
public void start()
{
System.out.println("Mp3 start");
} public void stop()
{
System.out.println("Mp3 stop");
}
} class Disk implements Usb
{
public void start()
{
System.out.println("Disk start");
} public void stop()
{
System.out.println("Disk stop");
}
} class Computer
{
public void work(Usb u)
{
u.start();
u.stop();
}
} public class InterFaceInstanceOf { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//通过其子类进行实例化操作
Usb uD = new Disk();
Usb uM = new Mp3(); Computer d = new Computer();
Computer m = new Computer(); d.work(uD);
m.work(uM); } }
4.接口实际上就是定义出了一个”统一的标准“
java中interface使用的更多相关文章
- java中interface的详解
JAVA的核心概念:接口(interface) 接口与类属于同一层次,实际上,接口是一种特殊的抽象类. 如: interface IA{ } public interface: 公开接口 与 ...
- Java中interface是否继承Object类
首先我们从C++说起, c++可以多继承.也就是一个类型 --- class,可以继承自2个以上的父类型.多继承导致一个问题,很多人知道.例如,如果类型B,类型C均继承自类型A.然后类型D继承自类型B ...
- java中interface 的特性
有时必须从几个类中派生出一个子类,继承它们所有的属性和方法.但是,Java不支持多重继承.有了接口,就可以得到多重继承的效果. 接口(interface)是抽象方法和常量值的定义的集合.从本质上讲,接 ...
- Java中interface和abstract class的区别和联系
interface: interface类似于class,但是只包含函数(只规定参数.函数名.返回类型,不规定函数体).目的是用来建立类和类之间的一种“协议”.一个类可以实现多种接口,来模拟多重继承. ...
- java中interface的完整表述
我用一个工具:java Decompiler反编译工具查看jar包源码的时候,出现了以下代码: public abstract interface AbsITest{} 在网上搜索了一下: 我对这种情 ...
- 关于 "java中常量定义在interface中好还是定义在class中好" 的一些思考
原文链接 http://blog.csdn.net/voo00oov/article/details/50433672 java中interface中定义变量都是"public static ...
- java中常量定义在interface中好还是定义在class中
Java中interface中定义变量都是"public static final" 类型的, 也就是常量, 因此很多人在interface定义常用的常量,除此之外单独定义一个cl ...
- Java中常量定义在interface和class的区别(转)
最终结论:定义常量在interface和class中其实都行,关键是看你的设计和个人爱好. Java中interface中定义变量默认都是"public static final" ...
- [转]Objective-c中@interface、@implementation、@protocal
原处:http://blog.csdn.net/l271640625/article/details/8393531 以下Objective-c简称OC 从事java开发的程序员们都知道,在java中 ...
随机推荐
- Php处理时间的函数
1,字符串与时间: 例如 $time = strtotime("2007-3-5"); echo date("Y-m-d H:i:s",$time); 2,当前 ...
- setTimeout和setInterval的unref()和ref()用法
var testFunction=function(){ console.log("guoyansi"); } var timer=setInterval(testFunction ...
- 【BZOJ】1001: [BeiJing2006]狼抓兔子(最小割 / 对偶图)
题目 传送门:QWQ 分析 显然答案是最小割. 然后dinic卡一卡过去了. 其实是懒得写转对偶图:正解 (dinic原来写的是vector,后来改的比较鬼畜 代码 #include <bits ...
- dede_CMS模板的基础安装
今天来给大家讲一讲dede_CMS的基础使用方法 那么什么是CMS呢 cms (content manage system 内容管理系统): 比如 新闻/电子商务/电影网/公司宣传网站/软件/文章) ...
- Linux下编写 makefile 详细教程
原文地址: https://www.cnblogs.com/mfryf/p/3305778.html 近期在学习Linux下的C编程,买了一本叫<Linux环境下的C编程指南>读到make ...
- 负载均衡的时候如何实现相同的session被分配到同一个服务器
http://www.zhihu.com/question/19651970 session共享那个问题时,有人说:其实从负载均衡的层面来看,大多数硬件/软件的负载均衡方案,都支持session状态保 ...
- 常见的HTTP Header
文件信息: Content-Type: application/x-javascript Content-Length: 2000 Content-Type:指定请求和响应的内容类型,如果未指定即为t ...
- Tkinter画布-Canvas
Python - Tkinter画布-Canvas: Canvas是一个长方形的面积,图画或其他复杂的布局.可以放置在画布上的图形,文字,部件,或是帧 Canvas是一个长方形的面积,图画或其他复杂的 ...
- dart 命名规范
1.类型 首字母大写 譬如 abstract class Shape 2.变量 驼峰式命名,首字母小写 class Article { String headUrl; String user; Str ...
- ADDCOMPONENT之后立即(同步)调用AWAKE,但START却是所有AWAKE完成后才调用 的(异步)
addcomponent 等价于 instance了一个组件,完成后立即从该点调用awake(). 等到游戏中所有组件都被awake()之后,start()才会被调用.示例如下: class MyTe ...