zoukankan      html  css  js  c++  java
  • 【从零开始学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
    • 构造方法:
      抽象类有构造方法的
      接口没有构造方法
  • 相关阅读:
    锁表
    vs2010宏的应用
    Oracle:sqlplus查询出的中文是乱码问题的解决(转)
    linux下查看端口和服务的一些命令
    netsh
    xpshutdown关机命令详解
    linux系统如何察看、修改系统时间
    delphi编程中调用其他执行程序?(转)
    如何修改Oracle用户密码的诀窍(转)
    转:用Delphi实现从Excel数据Update(Insert类似)到Oracle数据库表中
  • 原文地址:https://www.cnblogs.com/zllk/p/12656784.html
Copyright © 2011-2022 走看看