12.JavaSE 接口(介绍及正确用法)

*接口:
    概述:
        接口就是一种公共的规范标准,只要符合规范标准,大家都可以使用
        Java中的接口更多的体现在对行为的抽象

    关键字:
        ①interface
        ②implements

    特点:
        ①接口的实现用    implements 接口名     来表示

        ②接口是抽象的内容,不能直接实例化,可以通过多态的方式间接实例化
        
        ③如果是具体类,当实现了一个接口就必须重写该接口的抽象方法
          如果是抽象类,当实现了一个接口不一定需要重写该接口的抽象方法

    多态的形式:
        具体类多态 ,  抽象类多态 ,  接口多态(后面两个常用)

    多态的前提:
        ①有继承或者实现关系
        ②有方法重写
        ③有父(类/接口)引用指向(子/实现)类对象

    成员特点:
        ①可以拥有成员常量,但是没有成员变量
        
        ②可以通过接口名直接访问成员常量
        
        *以上总结是:
            成员常量都有系统默认给的  public 、 static  、  final 关键字修饰
                 即public static final 数据类型  常量名 = 值;
        
        ③接口里面没有构造方法,因为接口只是对行为进行抽象所以是没有具体存在的
    
        ④接口里面只能有抽象方法,不能有非抽象方法,同时自带系统默认的public abstract的关键字修饰

    
    注意:每一个类都是默认直接或者间接继承至object类,object是每个类的超类或基类,
        同时它自带无参构造方法。


        如果子类继承父类抽象类同时实现接口,两种的抽象方法在多态的情况下不能同时写,除非强制转换
        或者不用多态,而是用子类直接创建子类对象,毕竟子类是拥有最多内容的


    
    类和接口的关系:
        类和类的关系:
            继承关系,只能单继承,但是可以多层继承
        
        类和接口的关系:
            实现关系,可以单实现,也可以多实现,还可以在继承一个类的同时
            实现多个接口
            即类可以实现多个接口,还可以继承一个类并实现多个接口
                
        *接口与接口的关系:
            继承关系,可以单继承,也可以多(多层和多个)继承,Java中的多继承是体现在接口与接口之间
        

    抽象类和接口的区别:
        一、成员区别:
            抽象类          变量(抽象),常量;有构造方法;有抽象方法

            接口              常量;抽象方法

        二、关系区别:
            类与类           继承,单继承
            
            类与接口        实现,可以单实现,也可以多实现
            
            接口与接口     继承,单继承,多(多层和多个)继承


        主要是设计理念的区别:
            抽象类         对类抽象,包括属性、行为
            
            接口             对行为抽象,主要是行为

          即抽象的属性和行为可以通过外界进行定义,非抽象的属性和行为则不需要有外界定义
            (不用重写也能表达方法体的内容或者直接输出属性值)


    用处指向(抽象类和接口):
        例如:一个物品具有本身就拥有的功能(继承具有同类物品属性和行为的抽象类),
            同时在创新发展的过程中,在这个物品上开发并安装了新(额外)的功能
            (实现接口)
    
    *注意:抽象类是对事物的抽象,而接口是对行为的抽象
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小小艺术生◎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值