• 接口


    接口:

    1.java使用interface这个关键字来声明接口,修饰符一般都是public,interface后就是接口的名字

    2.java8之前接口内不能实现方法,接口方法不需要加修饰符,加与不加都是public abstract

    3.接口与类不同,他的方法没有实现代码定义一个接口本身并没有做什么

    4.java使用implements这个关键字表示接口,前面是类名,后面是接口名

     public class Point inplements MyComparable{}

    5.一个类可以实现多个接口,表明类的对象具备多种能力,各个接口之间以逗号分隔

    public class Test implents Interface1,Interface2

    6.接口不能new,对象只能通过类来创建,可以声明接口类型的变量,引用实现接口的类对象

    Interface1 p1=new classname();

    7.接口中的变量

    public interface Interface1{public static final int a=0;}

    修饰符可选,但不写也是public static final

    使用:Interface1.a

    8.接口的继承

    接口同样可以使用extends关键字继承,不同的是一个接口可以继承多个父接口,中间以逗号相隔

    9.类的继承与接口

    类可以在继承基类的情况下,同时实现一个或多个接口 关键字extends要放在implement之前

    10.接口也可以使用instanceof关键字,用来判断一个对象是否实现了某接口

    11.使用组合和接口替代继承

    12.java8和9对接口的增强:

    java8中允许在接口中定义两类新方法:静态方法和默认方法,他们都有实现体

    默认方法用default关键字表示,有默认的实现,实现类可以改变它的功能,也可以不改变

    引入默认方法主要是函数式数据处理的需求,是为了便于给接口增加功能

    在java8中,静态方法和默认方法都必须是public的,java9去除了这个限制,他们可以是private的,主要为了方便多个静态或默认方法复用代码

  • 相关阅读:
    惭愧无法面对的SQL ORDER BY
    JVM参数官方说明
    Java Unsafe 测试代码
    好记性不如烂笔头-Duration与Period中字母含义
    计算机组成原理中源码、反码、补码存在意义
    线程池参数、线程池扩容以及拒绝策略触发时机demo代码
    朴素贝叶斯法
    K近邻法与kd树
    EM算法
    熵、交叉熵、KL散度、JS散度
  • 原文地址:https://www.cnblogs.com/wtblogwt/p/9716681.html
Copyright © 2020-2023  润新知