5、接口

接口

接口(interfance)就是一个规范,定义的成员默认就是public static fianl ,定义的方法默认是public abstract

其他类实现(implements)接口,必须实现接口中的方法,除非这个类也是抽象类

使用方法:接口  实例 = new 接口实现类();     多态

实现多接口,类似于多继承 ,接口可以继承多个接口

JDK1.8 新增了一些语法:

      运行在接口中使用static和default

      主要理解default,一般都使用接口中需求的方法,不一定全部实现所有方法,这是就可以使用default关键字

接口和抽象类的区别

 1、语法上:就把定义,基本用法说说

2、设计思想不同:

       抽象类:  设计一个系统的时候,不会马上设计出抽象类(自下而上的一种设计思想:底层东西多了,就往上面开始设计)

                      考虑的是同类的共性

                       对象......类........父类.........抽象类

       接口:自上二下的设计思想

                         考虑的是不同类型之间的共同行为(谁需要这个功能,就去实现这个接口)

Comparable接口  -----自然排序

       Arrays.sort(数组),底层使用Comparable接口的compareTo(Object o)定义比较规则

        自己实现排序

                 参数排序的数据比较大小

       Arrays.sort(数组)

              Arrays.sort(自定义对象数组[])

        自定义对象数组,使用Arrays.sort()排序,实现Comparable接口中的compareTo方法

        compareTo:就是调用方法对象和参数的比较大小的规则:

    负数 调用方法对象<参数

     0 调用方法对象==参数

    正数 调用方法对象>参数

 

 

 

 

Comparator接口 - - -自定排序

      Arrays.sort(数组,Comparator),底层使用Comparator接口的compare(Object o1,Object o2)定义比较规则

         自定义排序,程序运行时,可以根据需要自定义排序规则,将实现这个接口的实现类,传递过来就可以实现自定义排序

 

posted @ 2021-11-01 11:31  金涛骇浪  阅读(28)  评论(0编辑  收藏  举报