zoukankan      html  css  js  c++  java
  • Java SE 基础之接口回顾

    以下是对《JAVA 核心技术 卷1 基础知识第十版》接口部分的重温和总结,如有错误等,敬请谅解,欢迎指正:


    1.接口是什么?

        接口是对类的一组需求描述,类遵循接口描述的同一格式进行定义。
        接口是没有实例域的抽象类。

    2.接口中可以定义常量,默认实现类也为此值。如果实现类单独定义,则为实现类的值。
        接口中不可以有私有的东西存在,默认为public,并且建议不需要写。

    3.接口和抽象类:
        (1).扩展抽象类,需要单继承。这样就不利于多实现,所以接口更容易扩展,实现多个类。
        
    4.Java SE 8中 接口新特性:
        |--允许在接口中定义静态方法/    例如:Collection/Connections,现在可以不需要再为使用工具提供伴随类。
        |--可以提供default的默认方法 例如:
            public interface Person {
                int PERSON_AGE =20;
                void say();
                
                void read();
                
                default int getAge(){
                    return PERSON_AGE;
                }
            }
            |--解决默认方法的冲突:
                准则:超类优先:如果超类提供了具体方法,则同名同参的默认方法就被忽略。
                        接口冲突:如果超接口有了默认方法,同名同参的,需要覆盖解决。一般,如果实现的两个接口
                            有同名同参的默认方法,会在实现类中抛错让程序员解决这个二义性。
                            如果是继承一个类,实现一个接口呢?那么基于类优先原则,接口方法会被忽略。

    5.Cloneable(标记接口):clone方法
    默认浅拷贝,深拷贝是解决拷贝对象中可变子对象。
  • 相关阅读:
    填坑!!!virtualenv 中 nginx + uwsgi 部署 django
    树的遍历与递归
    Python 函数的参数
    virtualbox安装增强功能时【未能加载虚拟光盘】
    深入理解Python中的生成器
    Genymotion下载慢或者下载失败的解决办法
    Python3 多线程的两种实现方式
    Java 多线程
    关于"裁员与面试"的个人感悟吧
    三、由简单对象组装复杂实例的模式:建造者模式
  • 原文地址:https://www.cnblogs.com/Kevin-1992/p/12608445.html
Copyright © 2011-2022 走看看