java 中的 接口与抽象类

本文详细阐述了Java中的接口、抽象类以及多态的概念,包括接口的特点(如抽象方法和默认修饰符)、接口与抽象类的异同,以及多态性在向上转型和向下转型中的运用,强调了面向对象的三大特性:封装、继承和多态。
摘要由CSDN通过智能技术生成
接口  interface

      public interface 接口名{
            // 静态常量 及 抽象方法
      }

  接口名:   I接口名
       接口不允许 使用 new 进行实例化

接口 与 class 区别

接口中方法 都是抽象方法 abstract,
接口中的方法默认 增加 public abstract 前缀

接口中的属性 默认 增加  public static final 前缀

  定义好接口后
   public class 类名  extends 父类类名 implements 接口名1,接口名2,接口名3{
        // 重写 抽象方法
   }

接口 与 抽象类 的区别???????????????????

共同点:    不允许 使用 new 创建对象, (实例化)

不同点:
   接口:   1. 使用 interface 关键字
           2. 接口中的属性 默认 使用 public static final 进行修饰
           3. 接口中 所有的方法 都是  抽象方法, 且 方法使用  public abstract 进行修饰
           4. 定义接口后 使用 implements 进行 实现接口


   抽象类: 1.使用 abstract 关键字
          2.  抽象类 可以定义 属性 及方法
          3.  抽象类 中可以 定义 抽象方法及 普通方法,  但 抽象方法 必须 在 抽象类 或接口中进行 定义
          4. 抽象类 可以 被继承



3. 多态----- 事物的多种形态
      例如 球  ---

      多态 建立在 抽象类 接口 之上,



向上转型:--------------重点
     父类类名  对象名= new 子类类名();  或者
     接口名  对象名 = new  子类类名();

    编译时类型 : 只能控制 方法 是否可以正确调用
    运行时类型:  具体是 什么子类类型 就调用 该子类的方法



  把 父类类型或接口名 作为方法的参数出现,灵活性更高-------重点



向下转型:   需要 借助 instanceof

  借助 instanceof 根据 类型 的判断结果进行 类型 转换



4. 总结

面向对象的三大特性:  封装 继承 多态


封装:  属性 private, 并生成 get/set
继承: 单继承,Object是所有类的父类, extends

多态:  抽象类, 接口, ----- 向上转型 (创建对象的方式的改变,及把父类类型作为方法的参数)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

射手座的程序媛

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

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

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

打赏作者

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

抵扣说明:

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

余额充值