zoukankan      html  css  js  c++  java
  • 抽象类

    1、什么情况下使用抽象方法、抽象类?

    当我们某父类需要表现它的子类们具有某些行为特征(方法),但是在父类中又无法给出具体的实现时,那么这样的方法就可以声明为抽象方法,Java中规定包含抽象方法的类必须是一个抽象类。

     

    2、抽象方法的语法格式

    【权限修饰符】 abstract 返回值类型  方法名(【形参列表】);

    抽象方法没有方法体

    抽象方法不能是私有的(private)、静态的(static)、终结的(final)、本地的(native)

    抽象方法的修饰符只能是public或protected,本包下也可以缺省。

     

    3、抽象类的语法格式

    【权限修饰符】 abstract class 类名 【extends 父类】{
       
    }

    抽象类可以有父类,它的父类可以是抽象的也可以是非抽象的。

     

    4、抽象类的特点

    (1)不能被实例化

    (2)包含抽象方法的类必须是抽象类,但是反过来抽象类可以没有抽象方法。

    (3)子类如果继承了抽象类,必须重写抽象父类的所有抽象方法,否则子类也得是抽象类。

    (4)抽象类有也必须有构造器,是给子类调用的(因为子类继承父类时,需要为从父类继承的属性进行初始化)。

    (5)抽象类的变量可以与子类的对象构成多态引用,通过抽象类的变量调用抽象方法时,执行的是子类“重写”的方法。

     

    5、面试题:抽象类与普通的非抽象类的区别?

    最主要的:抽象类不能实例化,可以包含抽象方法。

  • 相关阅读:
    JAVA正则表达式判断元音
    JAVA正则表达式校验qq号码
    方法
    数组
    Java基础随笔3
    LDA背景资料
    scrapy系列(四)——CrawlSpider解析
    scrapy系列(三)——基础spider源码解析
    scrapy系列(二)——startproject、genspider创建项目与模板使用
    我眼中的机器学习(四) 快速寻找最优解
  • 原文地址:https://www.cnblogs.com/panyizuoshan/p/11454599.html
Copyright © 2011-2022 走看看