• Java面向对象编程之抽象·6


    • 什么是抽象?
      • 当父类的某些方法不确定时,可以用abstract关键字来修饰该方法,即抽象方法,用abstract来修饰该方法,即抽象方法,用abstact关键字来修饰该方法,即抽象方法,用abstact修饰该类,即抽象类
      • 抽象类将事物的共性的东西提取出来,由子类继承去实现,代码易拓展,易维护
      • java中的抽象类和抽象方法
      • //抽象类
        abstact class  类名{
            
        }
        // 抽象方法,不能有方法主体
        abstact 返回类型 方法名();
        public abstact class Vehicle{
            public abstact void run();
            public void stop(){
             System.out.println("停在路边")   
            }
        }
        
        public abstract class Vehicle { 
            public abstract void run(); 
            public void stop(){ 
                System.out.println("停在路上");
                 } 
        } 
        class Bicycle extends Vehicle{
             @Override public void run() {
                System.out.println("⼈⼯驱动");
                 }
        } class Automobile extends Vehicle{
            @Override public void run() { 
               System.out.println("汽油驱动");
            }
        }
        

          

    • 抽象特点:
      • 抽象类的特点
        • 抽象类不能被实例化,因为抽象类中⽅法未具体化,这是⼀种不完整的类,所以不能直 接实例化,编译⽆法通过
        • 抽象类中不⼀定包含抽象⽅法,但是有抽象⽅法的类必定是抽象类
        • 如果⼀个抽象类中可以没有抽象⽅法,这样做的⽬的是为了此类不能被实例化。
        • 抽象类的⼦类必须给出抽象类中的抽象⽅法的具体实现,否则⼦类也是抽象类,需要⽤ abstract声明
        • 抽象类不能使⽤final关键字修饰,因为final修饰的类是⽆法被继承
      • 抽象⽅法的特点:
        • 抽象类中的抽象⽅法只是声明,不包含⽅法体
        • 抽象⽅法不能⽤private修饰,因为抽象⽅法必须被⼦类实现(覆写),⽽private权限 对于⼦类来 说是不能访问的
        • ⼀个类继承了⼀个抽象类,那么它必须全部覆写抽象类中的抽象⽅法,当然也可以不全 部覆写,如果不覆写全部抽象⽅法则这个⼦类也必须是抽象类
        • 构造⽅法,类⽅法(即static 修饰的⽅法)不能声明为抽象⽅法

    Bug? 不存在的!
  • 相关阅读:
    事件记录
    C++和extern C
    中断控制器
    NAND FLASH控制器
    MMU实验
    存储管理器实验
    GPIO实验
    linux与Windows使用编译区别及makefile文件编写
    ubuntu如何为获得root权限
    VI常用命令及linux下软件
  • 原文地址:https://www.cnblogs.com/mrchenyushen/p/14732753.html
Copyright © 2020-2023  润新知