• 【从零开始学Java笔记】接口


    大家可以关注作者的账号,关注从零开始学Java笔记文集。也可以根据目录前往作者的博客园博客进行学习。本片文件将基于黑马程序员就业班视频进行学习以及资料的分享,并记录笔记和自己的看法。欢迎大家一起学习和讨论。

    【从零开始学Java笔记】目录

    就在之前的章节我们提到Java语言的继承是单一继承,一个子类只能有一个父类(一个儿子只能有一个亲爹)
    Java语言给我们提供了一种机制,用于处理继承单一的局限性的, 接口。一个类可以实现多个接口(一个儿子可以有很多干爹)

    什么是接口

    接口是一个比抽象类还抽象的类,接口里所有的方法全是抽象方法,接口和类的关系是实现。
    关键字:implements、interface

    格式:
    interface接口名{
    }

    实例:

    public class InterfaceDemo {
    
    }
    
    interface InterA {
    	public abstract void a();
    }
    
    interface InterB {
    	public abstract void b();
    }
    
    interface InterC extends InterA, InterB {
    	public abstract void c();
    
    }
    
    class A implements InterC {
    
    	@Override
    	public void a() {
    		// TODO Auto-generated method stub
    
    	}
    
    	@Override
    	public void b() {
    		// TODO Auto-generated method stub
    
    	}
    
    	@Override
    	public void c() {
    		// TODO Auto-generated method stub
    
    	}
    
    }
    

    接口的成员特点

    只能有抽象方法
    只能有常量
    默认使用public&abstract修饰方法
    只能使用public&abstract修饰方法
    默认使用public static final来修饰成员变量
    建议:建议大家手动的给上默认修饰符

    注意:
    接口不能创建对象(不能实例化)
    类与接口的关系是实现关系,一个类实现一个接口必须实现它所有的方法

    类与类:继承关系,单一继承,多层继承
    类与接口:实现关系,多实现。
    接口与接口的关系:维承关系多继承

    接口的优点

    1.类与接口的关系,实现关系,而且是多实现,一个类可以实现多个接口,类与类之间是继承关系,java中的继承是单一继承,一个类只能有一个父类,打破了继承的局限性。
    2.对外提供规则(USB接口)
    3.降低了程序的耦合性(可以实现模块化开发,定义好规则,每个人实现自己的模块,提高了开发的效率)

    接口和抽象类的区别

    共性:不断的抽取,抽取出抽象的概念
    区别1:与类的关系

    • 类与接口是实现关系,而且是多实现,一个类可以是先多个接口
    • 类与抽象类是继承关系,Java中的继承是单一继承,一个类只能有一个父类,Java中的继承是多层继承

    区别2:成员

    • 成员变量:
      抽象类可以有成员变量,也可以有常量
      接口只能有常量
    • 成员方法:
      抽象类可以有抽象方法,可以有非抽象方法
      接口只能有抽象方法,而且方法有默认修饰符public abstract
    • 构造方法:
      抽象类有构造方法的
      接口没有构造方法
  • 相关阅读:
    lucene复合条件查询案例——查询name域 或 description域 包含lucene关键字的两种方式
    谈谈你对spring的理解?
    模拟Http请求的几种常用方式
    idea破解教程
    Pycharm 或者 idea 注册码 (亲测可用)
    超详细虚拟机工具和Centos7 Linux系统安装
    严重: Error loading WebappClassLoader context:异常的解决方法(转)
    spring cloud 笔记记录
    近一周学习之-----vue学习快乐之旅(1)
    近一周学习之-----vue开发工具visual studio code
  • 原文地址:https://www.cnblogs.com/zllk/p/12656784.html
Copyright © 2020-2023  润新知