精华内容
下载资源
问答
  • Java 接口总结

    2021-01-04 17:11:06
    Java 接口 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。 接口并不是类,编写接口的方式和类很...

    Java 接口
    接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。

    接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。

    除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。

    接口无法被实例化,但是可以被实现。一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类。另外,在 Java 中,接口类型可用来声明一个变量,他们可以成为一个空指针,或是被绑定在一个以此接口实现的对象。

    接口与类相似点:
    一个接口可以有多个方法。
    接口文件保存在 .java 结尾的文件中,文件名使用接口名。
    接口的字节码文件保存在 .class 结尾的文件中。
    接口相应的字节码文件必须在与包名称相匹配的目录结构中。

    接口与类的区别:
    接口不能用于实例化对象。
    接口没有构造方法。
    接口中所有的方法必须是抽象方法。
    接口不能包含成员变量,除了 static 和 final 变量。
    接口不是被类继承了,而是要被类实现。
    接口支持多继承。

    接口特性
    接口中每一个方法也是隐式抽象的,接口中的方法会被隐式的指定为 public abstract(只能是 public abstract,其他修饰符都会报错)。
    接口中可以含有变量,但是接口中的变量会被隐式的指定为 public static final 变量(并且只能是 public,用 private 修饰会报编译错误)。
    接口中的方法是不能在接口中实现的,只能由实现接口的类来实现接口中的方法。
    抽象类和接口的区别

    1. 抽象类中的方法可以有方法体,就是能实现方法的具体功能,但是接口中的方法不行。
    2. 抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是 public static final 类型的。
      3.一个类只能继承一个抽象类,而一个类却可以实现多个接口。

    注:JDK 1.8 以后,接口里可以有静态方法和方法体了。

    接口的实现
    当类实现接口的时候,类要实现接口中所有的方法。否则,类必须声明为抽象的类。
    类使用implements关键字实现接口。在类声明中,Implements关键字放在class声明后面。

    重写接口中声明的方法时,需要注意以下规则:
    类在实现接口的方法时,不能抛出强制性异常,只能在接口中,或者继承接口的抽象类中抛出该强制性异常。
    类在重写方法时要保持一致的方法名,并且应该保持相同或者相兼容的返回值类型。
    如果实现接口的类是抽象类,那么就没必要实现该接口的方法。

    在实现接口的时候,也要注意一些规则:
    一个类可以同时实现多个接口。
    一个类只能继承一个类,但是能实现多个接口。
    一个接口能继承另一个接口,这和类之间的继承比较相似。

    在 Java 9 中,一个接口中能定义如下几种变量/方法:

    常量
    抽象方法
    默认方法
    静态方法
    私有方法
    私有静态方法

    public interface Tomarrow extends Past {
        int num=10;//java 9新特性
        public void whatToDo();//没有方法体
        public int  age();
        int expextation();
        private int aaa(){//java 9新特性
            return 0;
        }
       default void discourse(String message) {//default必须要有
    
            System.out.println("我说 : " + message);
    
        }
    
    }
    

    面向接口编程
    关于接口的理解

    • 定义(规范,约束)与实现的分离。
    • 接口的本身反映了系统设计人员对系统的抽象理解。
    • 对个体的某一方面抽象,形成一个抽象面,即接口。
    展开全文
  • java接口总结

    2020-07-25 22:11:11
    接口(interface) 有时必须从几个类中派生出一个子类,继承它们所有的属性和方法,但是java不支持多重继承。...java中,接口和类是并列的两个结构 如何定义接口 定义接口中的成员 JDK7以前,只能定义全局

    接口(interface)

    有时必须从几个类中派生出一个子类,继承它们所有的属性和方法,但是java不支持多重继承。有了接口,就可以得到多重继承的效果;有时必须从几个类中抽取一些共同的行为特征,而它们之间又没有is-a的关系,仅仅是由相同的行为特征而已。

    接口就是一组标准,规范,定义的一组规则,制定好后大家遵守。体现现实世界中”如果你是/要…则必须能…“的思想。继承是“is a”的关系,而接口是"能不能"的关系

    java中,接口和类是并列的两个结构

    如何定义接口

    定义接口中的成员

    JDK7以前,只能定义全局常量和抽象方法

    全局常量,public static final的,但是书写时可以省略不写;抽象方法public abstract的

    public class InterfaceTest {
        public static void main(String[] args) {
            System.out.println(Flayable.MIN_SPEED);
    
            //Flayable.MAX_SPEED = 7800; //错误,隐藏着final
    
        }
    }
    
    interface Flayable{
    
        public static final int MAX_SPEED = 7900;
        int MIN_SPEED = 1;
    
        public abstract void fly();
    
        void stop(); //省略了public abstract
    
    }
    
    

    JDK8:除了定义全局常量和抽象方法外,还可以定义静态方法,默认方法

    接口中不能定义构造器,意味着接口不能实例化

    java开发中,接口通过让类去实现的方式去使用(implements)。类在实现接口的同时,为了编译通过,或者让类覆盖重写(实现)接口中的所有抽象方法,那么该实现类可以实例化;或者该实现类没有覆盖所有抽象方法,而是将类声明为抽象类。

    class Plane implements Flayable{
        public void fly() {
    
        }
    
        public void stop() {
    
        }
    }
    
    
    public static void main(String[] args) {
          
            Plane plane = new Plane();
            plane.fly();
            plane.stop();
    
        }
    
    
    abstract class Plane implements Flayable{
       
    }
    

    如果没有将接口中的抽象方法实现完,即还有方法没重写,要想编译通过,则要将类设置为抽象类

    Java类可以实现多个接口,弥补了java单继承的局限性

    格式:class AA extends BB implements CC,DD,EE{}

    interface  Attackable{
    
        void attack();
    
    }
    
    class Bullet implements Flayable,Attackable{
    
        public void fly() {
            
        }
    
        public void stop() {
    
        }
    
        public void attack() {
    
        }
    }
    

    接口和接口之间是继承关系,而且可以多继承

    class Plane implements Flayable,CC{
        public void fly() {
    
            System.out.println("起飞");
        }
    
        public void stop() {
            System.out.println("减速停止");
        }
    
    
        public void method1() {
            
        }
    
        public void method2() {
    
        }
    }
    
    
    interface AA{
        void method1();
    
    
    }
    
    interface BB{
        void method2();
    }
    
    interface CC extends AA,BB{
        
    }
    
    
    展开全文
  • Java接口总结

    2020-04-07 20:56:57
    什么是接口接口就是表示集合的抽象数据类型。接口允许我们操作集合时不必关注具体实现,从而达到“多态”。 Iterator接口: Iterator接口,用于遍历集合元素的接口。 在这个接口中定义了三个方法: hasNext()...

    什么是接口?
    接口就是表示集合的抽象数据类型。接口允许我们操作集合时不必关注具体实现,从而达到“多态”。

    Iterator接口:

    Iterator接口,用于遍历集合元素的接口。

    在这个接口中定义了三个方法:

    1. hasNext():返回类型为布尔型,如果仍有元素可以迭代,则返回true。
    2. next():返回迭代的下一个元素。
    3. remove():从迭代器指向的collection中移除迭代器返回的最后一个元素。在执行remove操作的时候,不会出现并发修改异常,因为在执行remove操作时,同样会先执行checkForComodification(),然后在执行ArrayList的remove()方法,该方法会将exceptedModCount值加1,使之保持统一。

    通过这个接口就能取出Collection集合中的元素,但不用关心每一个具体容器中的数据结构和取出的具体细节,这样就降低了取出元素和具体集合的耦合性。

    使用迭代器遍历集合元素:

    public static void main(String[] args) {
        List<String> list1 = new ArrayList<>();
        list1.add("1");
        list1.add("2");
        list1.add("3");
    
        // while循环方式遍历
        Iterator it1 = list1.iterator();
        while (it1.hasNext()) {
            System.out.println(it1.next());
        }
    
        // for循环方式遍历
        for (Iterator it2 = list1.iterator(); it2.hasNext(); ) {
            System.out.println(it2.next());
        }
    }
    
    

    ListIterator接口
    ListIterator是一个功能更加强大的迭代器,它继承于Iterator接口,只能用于各种List类型的访问。可以通过调用listIterator()方法产生一个指向List开始处的ListIterator,还可以调用listIterator(n)方法创建一个一开始就指向列表索引为n的元素处的ListIterator。

    特点:

    1. 允许我们向前向后两个方向遍历List;
    2. 在遍历时修改List的元素;
    3. 遍历时获取迭代器当前游标所在的位置。

    常用方法:
    add():将指定的元素插入到列表
    hasNext():如果此列表迭代器在前进方法还有更多的元素时,返回true。
    hasPrevious():如果此列表迭代器在相反方向还有更多的元素时,返回true。
    next():返回列表中的下一个元素和光标的位置向后推进。
    nextIndex():返回调用next()后返回的元素索引。
    previous():返回列表中的上一个元素和光标位置向前移动。
    previousIndex():返回调用previous()后返回的元素索引。
    remove():删除列表中调用next()或previous()的返回最后一个元素。(删除第一个或者最后一个)
    set():用指定元素替换列表中调用next()或previous()的返回最后一个元素。

    Collection接口
    所有集合类都位于java.util包下。Java的集合类只要有两个接口派生而出:Collection和Map,Collection和Map是Java集合框架的根接口,这两个接口又包含了一些子接口或实现类。

    • Collection一次存一个元素,是单列集合;
    • Map一次存一对元素,是双列集合。Map存储的一对元素:键-值,键(key)与值(Value)间有对应(映射)关系。
    展开全文
  • JAVA接口总结

    2017-04-08 18:14:16
    2、接口可以有多个直接父接口,只能继承接口,不能继承类 (interface interFC extends interFA, interFB) 3、接口不包含构造器和初始化块定义。接口可以包含常量,方法,和内部类、内部接口、枚举 4、接口里的所有...

    1、可以是public,可以省略。省略了public,包权限访问控制,相同包结构下才可以访问。

    2、接口可以有多个直接父接口,只能继承接口,不能继承类 (interface interFC extends interFA, interFB)

    3、接口不包含构造器和初始化块定义。接口可以包含常量,方法,和内部类、内部接口、枚举

    4、接口里的所有成员都是public。

    接口里的常量都是public static final,只能定义时指定默认值

    接口里的方法都是抽象方法,要被其它方法重写,所以不可以使用static 。接口里的方法都是public abstract

    5、接口不能创建实例,但可以用于声明引用类型变量

    6、类虽然单继承,但可以实现多个接口。  class A extends B implements c1,c2

    类必须实现接口里的全部抽象方法;

    否则该类将继续保留从父接口那继承到的抽象方法,该类也必须定义成抽象类。

    7、


    接口和抽象类:

    相同:

    1、接口和抽象类都不能实例化

    2、都包含抽象方法,需要子类去实现

    不同:

    1、接口只能包含抽象方法,不包含普通方法;抽象类包含普通方法。

    2、接口不能定义静态方法,抽象类里可以定义静态方法。

    3、接口里常量只能是静态,抽象类里则和普通类一致

    4、接口不含构造器。抽象类可以包含构造器,抽象类的构造器并不是用来创建对象,而是让子类调用构造器完成初始化操作

    5、接口不能包含初始化块,抽象类可以包括


    展开全文
  • Jmeter压测http、Java接口总结

    千次阅读 2018-05-28 21:57:31
    Jmeter压测http、Java接口总结Jmeter 通过线程组驱动多个线程。建立一个线程池,多线程运行取样器产生大量负载,达到压测的目的。一、基本组件1、HTTP信息头管理器2、csv data set Config二、HTTP接口1、https证书2...
  • java接口总结 1、在java中,接口是一种与类看起来类似的类型,但不是类。接口主要用来定义类的需求。在标准库中,往往这样应用接口: “Array类中的sort方法可以对对象数组进行排序,前提是数组中的对象所属的类...
  • JAVA接口知识点总结: 1.接口中的成员变量就是常量。 -----格式: public static final 数据类型 变量名称 = 赋值; -----注意:1.常量必须进行赋值,且赋值后不可改变 --------------2.常量名称完全大写,用下划线...
  • Java 接口要点总结

    2020-12-22 08:14:23
    文章目录接口的定义接口的抽象方法接口的使用接口的默认方法接口的静态方法接口的私有方法接口的常量接口之间的多继承总结 接口的定义 接口就是多个类的公共规范。 接口是一种引用数据类型,最重要的内容就是其中的...
  • 想要了解Java接口特性,我们首先要知道接口并不是Java语言所独有的,接口泛指实体把自己提供给外界的一种抽象化物(可以为另一实体),用以由内部操作分离出外部沟通方法,使其能被内部修改而不影响外界其他实体与其...
  • java基础接口总结

    2021-03-27 14:19:01
    java基础接口总结 接口中的方法都是抽象的,不能实例化对象。 借口中的属性只能是常量。 当一个类实现接口时,如果这个类是抽象类,则实现接口中的部分方法即可,否则需要实现接口中的所有方法。 通过implements...
  • java接口开发总结

    2018-02-25 14:36:27
    上传的PPT内容包括:接口文档格式,接口文档编写注意事项,接口文档在线工具swagger的使用,实现接口的注意事项
  • JAVA接口总结

    2019-11-27 18:11:20
    JAVA接口总结 接口的声明 [public] interface 接口名称 [extends 其他的类名]{ [public] [static] [ final] 数据类型 成员名称 = 常量值; [public] [abstract] 返回值 抽象方法名(参数列表); } 接口的注意点 ...
  • 单继承使得java简单,易于管理,但如果要克服单继承性的缺点就要使用接口技术,是一个类可以实现多个接口,用关键字interface关键字来定义一个接口。(1)接口声明:interface 接口名; 接口体:包括常量定义和方法定义...
  • Java 接口学习总结

    2019-05-01 14:15:12
    1.概述 接口( interface) 技术, 主要用来描述类具有什么功能,而并不给出每个功能的具体...Java中每个类只能扩展于一个类。 (2)接口不是类,尤其不能使用 new 运算符实例化一个接口,却能声明接口的变量。 (...
  • java interface接口总结

    2020-04-26 21:52:25
    Java 9+版本中,接口的内容可以有: 对接口内容进行总结 1.成员变量其实是常量:,格式: [public] [static ] [final] 数据类型 常量名称=数据值; 注意: 常量必须进行赋值,而且不能改变 常量名称完全大写,用...
  • java接口知识总结

    2018-07-19 12:42:44
    接口是一种特殊的抽象类,为了克服java单继承的缺点而被引入。通常可以通过一个类实现多个接口的方式来达到多重继承的目的。 接口和继承的区别简而言之就是“has-a”和“is-a”的区别。 那么接口中都能写入哪些...
  • Java并发总结一、开启线程1、Runnalbe接口新建一个LiftOff.java 文件public class LiftOff implements Runnable {protected int countDown = 10; // Defaultprivate static int taskCount = 0;private final int id ...
  • java接口总结

    2018-06-20 13:32:36
    1、声明方法而不实现的方法叫抽象类2、所有的方法都不实现的抽象类叫 接口;3、java不支持多继承,可以用多个接口来实现多继承的问题;4、接口是抽象类的特殊表现;...
  • java接口总结

    2017-10-26 10:48:29
    接口的方法的实现以及例子
  • Java接口学习总结

    2015-08-04 23:38:33
    一、接口的特点1、接口不可以实例化,创建对象时利用多态的方式创建。Animal animal = new Dog(); //Animal是接口,Dog必须是实现了接口Animal的类。2、接口的子类可以是抽象类,也可以是具体类(必须实现该接口,...
  • java 接口和继承总结

    2017-11-14 16:58:00
    准备把java接口和继承的使用总结一下,先收集几个有帮助的博文: 1、http://blog.csdn.net/beiai1014/article/details/1561790 澄清java接口和继承的本质 2、...
  • java接口总结

    2017-04-15 19:55:04
    接口: 定义接口使用的关键字不在是abstract而是interface。 interface是特殊的abstract类。 对于接口当中,常见的成员。 这些成员都是有固定的修饰符。 1、全局常量。:public static final 2、抽象方法。...
  • 关于Java接口使用总结

    2017-08-05 14:35:16
    定义抽象类是从多个类中抽象出来的模板,如果将这种抽象进行得更彻底,则可以提炼出一种更加特殊的”抽象类“——接口(interface)。...Java 8对接口进行了改进,允许在接口中定义默认方法,默认方法可以提供方法实现。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,906
精华内容 7,162
关键字:

java接口总结

java 订阅