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的详解的更多相关文章

  1. java中的注解详解和自定义注解

    一.java中的注解详解 1.什么是注解 用一个词就可以描述注解,那就是元数据,即一种描述数据的数据.所以,可以说注解就是源代码的元数据.比如,下面这段代码: @Override public Str ...

  2. [转载]java中import作用详解

    [转载]java中import作用详解 来源: https://blog.csdn.net/qq_25665807/article/details/74747868 这篇博客讲的真的很清楚,这个作者很 ...

  3. Java中dimension类详解

    Java中dimension类详解 https://blog.csdn.net/hrw1234567890/article/details/81217788

  4. Java中日志组件详解

    avalon-logkit Java中日志组件详解 lanhy 发布于 2020-9-1 11:35 224浏览 0收藏 作为开发人员,我相信您对日志记录工具并不陌生. Java还具有功能强大且功能强 ...

  5. Java中反射机制详解

    序言 在学习java基础时,由于学的不扎实,讲的实用性不强,就觉得没用,很多重要的知识就那样一笔带过了,像这个马上要讲的反射机制一样,当时学的时候就忽略了,到后来学习的知识中,很多东西动不动就用反射, ...

  6. JAVA中Object类方法详解

    一.引言 Object是java所有类的基类,是整个类继承结构的顶端,也是最抽象的一个类.大家天天都在使用toString().equals().hashCode().waite().notify() ...

  7. Java中常见方法详解合集(方法的定义及语法结构)

    Java的方法定义 1.方法的定义 方法是控制对象的动作行为方式与准则,在Java中方法位于类体下又有另一种含义. 普通的方法在类中称为"实例方法",因为方法的调用需要创建对象,而 ...

  8. Java 中的泛型详解-Java编程思想

    Java中的泛型参考了C++的模板,Java的界限是Java泛型的局限. 2.简单泛型 促成泛型出现最引人注目的一个原因就是为了创造容器类. 首先看一个只能持有单个对象的类,这个类可以明确指定其持有的 ...

  9. Java中Unsafe类详解

    http://www.cnblogs.com/mickole/articles/3757278.html Java不能直接访问操作系统底层,而是通过本地方法来访问.Unsafe类提供了硬件级别的原子操 ...

随机推荐

  1. setInterval和clearInterval

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  2. AFNetworking 3.0

    AFN 一.什么是AFN 全称是AFNetworking,是对NSURLConnection的一层封装 虽然运行效率没有ASI高,但是使用比ASI简单 在iOS开发中,使用比较广泛 AFN的githu ...

  3. 最小生成树——prim算法

    prim算法是选取任意一个顶点作为树的一个节点,然后贪心的选取离这棵树最近的点,直到连上所有的点并且不够成环,它的时间复杂度为o(v^2) #include<iostream>#inclu ...

  4. 安装系统时出现“windows无法安装到这个磁盘。选中的的磁盘采用GPT分区形式”

    安装系统到提示你不能安装在那个磁盘的一步,然后按住shift+F10呼出diskpart命令符,然后依次输入 diskpart list disk select disk 0 clean conver ...

  5. 数论 UVAlive 2889

    这是一道考察回文数的题目,要求你输出第k个回文数.在做题的过程中,可以发现回文数的分布的规律:一位数:9个,二位数:9个,三位数:90个,四位数:90个,五位数:900个,六位数:900个……. #i ...

  6. NSLog 自定义 屏蔽

    1.如何自定义NSLog呢? 直接在工程的XXX_Prefix.pch中加入以下语句(就相当于在全局中定义了)#define NSLog NSLog(@"#%s##%d#",str ...

  7. 自学 PHP,如何不走弯路?

    1.一本好书至关重要.如果这本书的知识非常深入,那么还是不要看了.对初学者来说只能是打击.因为很多东西都看不懂.一本知识较为浅显,并且说明非常详细,但是能让你上手的基础知识又非常完善的书籍就非常好.( ...

  8. System.DateUtils 1. DateOf、TimeOf 简单修饰功能

    编译版本:Delphi XE7 { Simple trimming functions } // 简单修饰功能 function DateOf(const AValue: TDateTime): TD ...

  9. 【转载】让你的MATLAB代码飞起来

    原文地址:http://developer.51cto.com/art/201104/255128_all.htm MATLAB语言是一种被称为是"演算纸"式的语言,因此追求的是方 ...

  10. 【转载】Chaotic Time-Series Prediction

    原文地址:https://cn.mathworks.com/help/fuzzy/examples/chaotic-time-series-prediction.html?requestedDomai ...