ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java -- 接口

2022-02-26 13:33:33  阅读:142  来源: 互联网

标签:Java -- 接口 int 抽象 interface public


Java -- 接口

基础语法

  • 接口属于引用数据类型,编译之后也是字节码文件

  • 接口完全抽象(抽象类是半抽象),可以理解接口是特殊的抽象类

  • 接口的定义方法

    [修饰符列表] interface 接口名{}
    
  • 接口支持继承,而且是多继承

    /*
    *   接口支持多继承
    */
    
    public class Test01{
    
        public static void main(String[] args) {
            
    
        }
    }
    
    interface A{
    
    }
    
    interface B{
    
    }
    
    interface C extends A, B{
        
    }
    
  • 接口中只包含两部分:常量、抽象方法【不信可以尝试其他】

  • 接口中的所有元素都是public修饰【都公开】

  • 接口中的抽象方法定义可以不用public abstract修饰符省略

  • 接口中抽象方法不能有方法体

  • 接口中的常量可以省略public static final修饰符

    /*
    *   接口
    */
    
    public class Test01{
    
        public static void main(String[] args) {
            
            System.out.print(MyMath.PI);
        }
    }
    
    // 数学接口
    interface MyMath{
    
        // 常量
        public static final double PI = 3.14;
        int K = 100;
    
        // 抽象方法
        public abstract int sum(int a, int b);
        double sum(double a, double b);
    }
    
  • 类与类之间是继承 extends,类和接口之间是实现 implements

  • 类实现接口时不要忘了实现其中的抽象方法,抽象类实现接口可以不用

    public class Test02{
    
        public static void main(String[] args) {
            
            MyMathImpl test = new MyMathImpl(); // 面向接口编程
            // 接口应用到多态中
    
            int result1 = test.sum(10, 20);
            System.out.println(result1);
    
            int result2 = test.sub(20, 10);
            System.out.println(result2);
        }
    }
    
    // 数学接口
    interface MyMath{
    
        double PI = 3.14;
        int sum(int a, int b);
        int sub(int a, int b);
    }
    
    class MyMathImpl implements MyMath{
    
        // 不能省略public,访问权限不能比实现接口中的实现方法更低
        public int sum(int a, int b) {
            return a + b;
        }
    
        
        public int sub(int a, int b) {
            return a - b;
        }
    }
    
  • 一个类可以实现多个接口

  • 这种机制弥补了Java中的什么缺陷?

    Java中类和类只支持单继承,但现实中更多的是需要多继承。

    Java中的接口弥补了这一缺陷

  • 继承与实现都在时,extends在前,implements在后

  • 接口通常提取行为动作

接口在开发中的作用

接口在开发中的作用,类似于多态在开发中的作用

多态:降低程序耦合度,提高程序的可拓展性,应该遵守OCP原则(对拓展开发,对修改关闭)

接口在开发中的作用:

  • 面向抽象编程,应该是面向接口编程

    有了接口就有可插拔【拓展性强】,不要焊死

  • 接口可以解耦合

  • 任何接口存在调用者和实现者,接口可以对两者进行调解

标签:Java,--,接口,int,抽象,interface,public
来源: https://www.cnblogs.com/shadow-/p/15939048.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有