zoukankan      html  css  js  c++  java
  • Java基础--抽象类

    抽象类

    abstact定义的一个抽象类

    package oop.demo08;
    // abstract 抽象类
    // extends: 只能单继承(多继承通过接口实现)
    public abstract  class Action {
        //约束 有人帮我们实现
        // 抽象方法: 只有方法名字,没有方法的实现
        public abstract void doSomething();
        //1. 不能new抽象类,只能靠子类去实现它
        //2. 抽象类里面可以写普通方法,但是抽象方法必须在抽象类中
        
    }
    
    package oop.demo08;
    // 抽象类的所有方法,继承了它的子类,都必须要实现它的方法
    // 除非:子类也是一个抽象类
    public class A extends Action {
        @Override
        public void doSomething() {
    
        }
    }
    
    package oop.demo08;
    public class APP {
        public static void main(String[] args) {
            // Action action = new Action();
        }
    }
    
    
    

    思考:

    1. 抽象类不能new,但是它存在构造方法吗?

    java抽象类的构造方法和普通类的构造方法一样,都是用来初始化类。只是抽象类的构造方法不能直接调用,因为抽象类不能实现实例。但是一旦一个普通类继承了抽象类,便也可以在构造函数中调用其抽象类的构造函数,也可以使用其方法。 抽象类就是一个不能实例化的不同类,不过如果方法加了abstract那么就必须在子类里面重写了

    1. 存在的意义?

    将公共模块抽象出来,提高开发的效率。

  • 相关阅读:
    div 和 span的区别
    div 和 span的区别
    javascript类的定义及成员修改
    C# bho操作dom 同时带有隐藏工具栏功能,菜单栏
    javascript类的定义及成员修改
    数据库原理8个例子sql语句
    数据库原理8个例子sql语句
    C++的声明和定义的出别
    C++的声明和定义的出别
    Visual Studio 添加图标和版本
  • 原文地址:https://www.cnblogs.com/sinlearn/p/13362960.html
Copyright © 2011-2022 走看看