JAVA的核心概念:接口(interface)
JAVA的核心概念:接口(interface)
接口与类属于同一层次,实际上,接口是一种特殊的抽象类。
如: interface IA{ } public interface:
公开接口 与类相似,一个文件只能有一个public接口,且与文件名相同。 在一个文件中不可同时定义一个public接口和一个public类。
一个接口中,所有方法为公开、抽象方法;所有的属性都是公开、静态、常量。
一个类实现一个接口的格式: class IAImple implements IA{ }; 一个类实现接口,相当于它继承一个抽象类。
类必须实现接口中的方法,否则其为一抽象类。 实现中接口和类相同。
接口中可不写public,但在子类中实现接口的过程中public不可省。
(如果剩去public则在编译的时候提示出错:对象无法从接口中实现方法。)
注: ① 一个类除继承另外一个类,还可以实现接口; class IAImpl extends java.util.Arrylist implement IA{}
继承类 实现接口 这样可以实现变相的多继承。
② 一个类只能继承另外一个类,但是它可以继承多个接口,中间用“,”隔开。
Implements IA,IB 所谓实现一个接口,就是指实现接口中的方法。
③ 接口和接口之间可以定义继承关系,并且接口之间允许实现多继承。
例:interface IC extends IA,IB{}; 接口也可以用于定义对象 IA I=new IAImpl(); 实现的类从父类和接口继承的都可做运行时类型。
IAImple extends A implement IA,IB IB I=new IAImple();
I instance of IAImple; I instance of A; I instance of IA; I instance of IB; 返回的结果均为true.
接口和多态都为JAVA技术的核心。
接口往往被我们定义成一类XX的东西。 接口实际上是定义一个规范、标准。
① 通过接口可以实现不同层次、不同体系对象的共同属性; 通过接口实现write once as anywhere. 以JAVA数据库连接为例子:JDBC制定标准;数据厂商实现标准;用户使用标准。 接口通常用来屏蔽底层的差异。
②接口也因为上述原因被用来保持架构的稳定性。
JAVA的核心概念:接口(interface)的更多相关文章
- C++虚函数virtual,纯虚函数pure virtual和Java抽象函数abstract,接口interface与抽象类abstract class的比较
由于C++和Java都是面向对象的编程语言,它们的多态性就分别靠虚函数和抽象函数来实现. C++的虚函数可以在子类中重写,调用是根据实际的对象来判别的,而不是通过指针类型(普通函数的调用是根据当前指针 ...
- 1.0 JAVA基础核心概念
JAVA基础知识 转载至:http://www.runoob.com/java/java-variable-types.html 对菜鸟教程进行核心整理: 一.JAVA理论概念 1.基础概念 Java ...
- Java 基础 面向对象: 接口(interface )概念 以及接口之练习3 -定义一个接口用来实现两个对象的比较并 判断instanceof是否为同类
接口(interface )概念概念笔记 及测试代码: /** 面向对象: 接口(interface ) 是与类并行的一个概念: * 1.接口可以看成一个特殊的抽象类,它是常量与抽象方法的一个集合 * ...
- JAVA入门(1.JAVA平台应用 2.核心概念:JVM,JDK,JRE 3.搭建JAVA开发环境 4.学习JAVA的原则)
主要内容: 1.JAVA平台应用 2.核心概念:JVM,JDK,JRE 3.搭建JAVA开发环境 4.学习JAVA的原则 JAVA的平台应用 JAVA的平台应用分为3个部分: 一.JAVA SE,主要 ...
- 003-spring-data-elasticsearch 3.0.0.0使用【一】-spring-data之概述、核心概念、查询方法、定义Repository接口
零.概述 Spring Data Elasticsearch项目提供了与Elasticsearch搜索引擎的集成.Spring Data Elasticsearch的关键功能区域是一个POJO中心模型 ...
- JAVA之旅(七)——final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展
JAVA之旅(七)--final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展 OK,我们继续学习JAVA,美滋滋的 一.final 我们来 ...
- JavaSE入门学习20:Java面向对象之接口(interface)(一)
一Java接口 接口(英文:interface)是抽象方法和常量值的集合,在Java编程语言中是一个抽象类型,接口通常以interface来声 明.类是一种详细实现体.而接口定义了某一批类所须要遵守的 ...
- JNDI(Java Naming and Directory Interface,Java命名和目录接口)
JNDI(Java Naming and Directory Interface,Java命名和目录接口)是SUN公司提供的一种标准的Java命名系统接口,JNDI提供统一的客户端API,通过不同的访 ...
- java中的接口interface
关于接口 接口描述了实现了它的类拥有什么功能.因为Java是强类型的,所以有些操作必须用接口去约束和标记.接口作为类的能力的证明,它表明了实现了接口的类能做什么. 类似与class,interface ...
随机推荐
- 笔记本电脑连接wifi有时候会自动断网提示有限的访问权限解决办法
解决办法如下: [设备管理器],找到[网络适配器]第一项,右键属性
- oracle 建立主键与索引【转】
此文转自:http://blog.sina.com.cn/s/blog_439f80c4010094n1.html 创建主键: alter table T add primary key (V) T是 ...
- 使用Putty连接VirtualBox的Ubuntu
从vbox中安装了ubuntu server,然后用ssh连过去,发现有一个错误:server unexpectedly closed network connection.猛然发现,ssh没有安装. ...
- mysql 执行流程
mysql 执行流程 我们可以人为的把mysql 的主要功能分为如下模块. 1.初始化模块 mysql启动的时候执行初始化工作,如读取配置文件,分配一些全局变量(sql_model,catch buf ...
- IntelliJ IDEA 比较当前版本文件与历史文件
前言: 写代码修改后怎样比较与历史文件的区别呢?idea提供了2种比较方式(目前笔者所了解到的) 一.SVN的版本比较 二.当前文件与历史版本比较
- 给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。
// test14.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> #include< ...
- Log4j XML配置
问题描述: Log4j XML配置 问题解决: (1)编写log4j.xml配置文件 注: 如上的XML文件必须以log4j.xml文件命名,否则无法读取配置文件,同样的如果 ...
- CSS透明属性详解代码
透明往往能产生不错的网页视觉效果,先奉上兼容主流浏览器的CSS透明代码: 代码如下: .transparent_class { filter:alpha(opacity=50); -moz-opaci ...
- 在线最优化求解(Online Optimization)之一:预备篇
在线最优化求解(Online Optimization)之一:预备篇 动机与目的 在实际工作中,无论是工程师.项目经理.产品同学都会经常讨论一类话题:“从线上对比的效果来看,某某特征或因素对xx产品的 ...
- POJ2418Hardwood Species
题意 : 输入若干个树木品种,里边有的是重复的,让你统计每个品种占输入的总数量的百分比,最后按字典序输出 思路 : 本题数量很大,所以采用直接统计的方式会超时,而采用的方法可以用二叉搜索树,或者用ma ...