java基础--抽象方法
发布日期:2021-05-08 19:24:30 浏览次数:20 分类:精选文章

本文共 1329 字,大约阅读时间需要 4 分钟。

抽象方法

1. 概述

在面向对象编程中,抽象类是核心概念之一。它代表了一个类的框架或基架,具有一定的属性和方法,但这些属性和方法不具体实现。抽象类的作用在于为具体的子类提供共同的基础,确保子类可以继承并扩展抽象类的特性。

2. 没有抽象方法的抽象类有什么意义

抽象类的意义在于它体现了概念层面的东西,而不是具体的实现。假设我们有一个大类“东西”,它可能包含许多子类,比如“动物”、“车”和“房子”。我们可以提取出一个共同概念“生命体”,这个“生命体”可以成为一个基类,也就是抽象类。这个抽象类可能具备一些属性,如“吃东西”和“呼吸”,但不具备具体的实现,如“跑步”和“飞行”。

没有抽象方法的抽象类的作用

  • 抽象类不能被实例化

    抽象类不能用new操作符创建实例,因为它没有具体的实现。例如,抽象类Animal不能被new出来,但它的子类Dog和Cat可以。

  • 抽象类可以有构造方法,但构造方法不能是抽象方法

    抽象类可以定义构造方法,但这个构造方法不能是抽象的。例如,抽象类Animal可以有一个protected的构造方法,子类可以通过调用父类的构造方法来实现。

  • 通过子类继承,可以调用抽象类的构造方法

    子类可以访问和调用抽象类的构造方法,从而实现特定的初始化逻辑。例如,Dog类可以调用Animal类的构造方法,并在其基础上添加自己的初始化逻辑。

  • 6. 对final进行赋值

    在Java中,final是一个关键字,用于修饰类、方法和变量。它的作用是确保代码的安全性和一致性。对于final变量,赋值必须在声明时完成,不能在运行时修改。这是Java中的一大特点。

    final变量的赋值

    final变量在声明时必须赋值,不能在运行时修改。例如:

    public class FinalTest {    public static final String FINAL_STRING = "这是一个final变量";    public static void main(String[] args) {        System.out.println(FINAL_STRING);    }}

    final方法的赋值

    final方法不能被子类覆盖,也不能被重写。这意味着一旦一个方法被声明为final,它的实现就无法被修改。这对于代码的安全性非常重要,因为它防止了方法的随意修改。

    final类的赋值

    final类不能被继承,除非它本身声明了一个protected的构造方法。例如:

    public class FinalClass {    public static final String FINAL_STRING = "这是一个final类";    public FinalClass() {        System.out.println("这是一个final类的构造方法");    }}

    总结

    final是一个关键字,用于确保代码的安全性和一致性。在Java中,final变量和方法的赋值必须在声明时完成,final类不能被继承,除非它声明了一个protected的构造方法。理解final的使用可以帮助开发者更好地管理代码的安全性和一致性。

    上一篇:java基础--继承
    下一篇:java基础--static

    发表评论

    最新留言

    哈哈,博客排版真的漂亮呢~
    [***.90.31.176]2025年03月29日 10时59分55秒