• 面向对象(抽象类)


    什么是抽象类?

    可以简单理解为光说不做,例如:好好学习,将来发大财,就比较抽象!

    只有方法声明,没有方法主体,那么这就是一个抽象类

    抽象类的关键字:abstract

    当定义了抽象函数的类也必须被abstract关键字修饰,被abstract关键字修饰的类是抽象类。

    抽象方法定义的格式:

    public abstract 返回值类型 方法名(参数);

    抽象类定义的格式:

    public abstract class 类名 {

     

    实体类里只有方法声明,子类里面有方法声明 例如:

    //研发部员工 
    public abstract  class Developer {
    	public abstract void work();//抽象函数。需要abstract修饰,并分号;结束 方法的声明
    }
    

      继承之后开始写方法主体

    //JavaEE工程师
    public class JavaEE extends Developer{
    	public void work() {
    		System.out.println("正在研发淘宝网站");
      }

      

    //Android工程师
    public  class Android extends Developer {
    	public void work() {
    		System.out.println("正在研发淘宝手机客户端软件");
    	}
    }
    

      抽象类的特点:

    首先抽象类不可以直接创建对象,因为调用抽象的方法没有任何的意义

    只有重写了抽象类里所有的方法之后,子类才可以创建对象,否则子类它仍然是一个抽象方法

    抽象类关键字abstract不可以和private共存!

    private:私有的方法子类是无法继承到的,也不存在覆盖,而abstract和private一起使用修饰方法,abstract既要子类去实现这个方法,而private修饰子类根本无法得到父类这个方法。互相矛盾。

    抽象类一定是个父类吗?

    对,因为不断从父类里面抽取!

  • 相关阅读:
    【译】深入理解G1的GC日志(一)
    【译】深入理解G1的GC日志(一)
    【译】深入理解G1的GC日志(一)
    Java 8 Time Api 使用指南-珍藏限量版
    颠覆微服务认知:深入思考微服务的七个主流观点
    函数式编程让你忘记设计模式
    使用Optional摆脱NPE的折磨
    使用Optional摆脱NPE的折磨
    使用Optional摆脱NPE的折磨
    面试官:优化代码中大量的if/else,你有什么方案?
  • 原文地址:https://www.cnblogs.com/awdsjk/p/10913738.html
Copyright © 2020-2023  润新知