Java之抽象类

简介: Java之抽象类

作者简介: zoro-1,目前大一,正在学习Java,数据结构

作者主页:zoro-1的主页

欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖

抽象类概念

面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。

例1:

例2:

抽象类如何使用

抽象类是一种不能被实例化的类,它只能作为其他具体类的基类来使用,其主要作用是为子类提供统一的接口和约束。在使用抽象类时,需要遵循以下步骤:

  1. 1.定义抽象类:使用关键字 abstract 定义一个抽象类,可以包含抽象方法和非抽象方法。

     2.定义抽象方法:在抽象类中定义一个或多个抽象方法,它们没有实现体,只是定义了方法名称、参数类型和返回值类型。

    3.子类继承抽象类:子类需要继承抽象类,并实现其中的抽象方法,若不实现,则子类也必须声明为抽象类。

    4.创建子类对象:使用子类进行实例化,即可调用子类中实现的抽象方法。

public abstract class Animal {
    protected String name;
    public Animal(String name) {
        this.name = name;
    }
    public abstract void speak();
    public void eat() {
        System.out.println(name + " is eating.");
    }
}
public class Cat extends Animal {
    public Cat(String name) {
        super(name);
    }
    public void speak() {
        System.out.println(name + " is meowing.");
    }
}
public class Main {
    public static void main(String[] args) {
        Cat myCat = new Cat("Tom");
        myCat.speak();  // Output: Tom is meowing.
        myCat.eat();    // Output: Tom is eating.
    }
}

抽象类的特性

抽象类是一种特殊的类,它具有以下特性:

  1. 1.抽象类不能被实例化。也就是说,不能直接创建抽象类的对象。
  2. 2.抽象类可以包含抽象方法和非抽象方法。抽象方法是没有具体实现的方法,必须在子类中被实现。非抽象方法则可以有具体实现。
  3. 3.子类必须实现父类中所有的抽象方法,否则子类也必须声明为抽象类。

     4.抽象类可以有构造方法,但是不能用于实例化对象。

  1. 5.抽象类可以被继承,子类可以使用父类中的非抽象方法,也可以重写父类中的抽象方法。

     6.抽象类可以实现接口,实现接口中的所有方法。

     7.abstract与final是天敌,不能放在一起

     8.抽象方法不能是 private 的,抽象方法不能被final和static修饰,因为抽象方法要被子类重写

抽象类的主要作用是为了提供一种抽象的模板,让子类在该模板的基础上进行扩展和实现。


今天的分享到这里就结束了,感谢大家支持,创作不易,希望大家能给博主个三连



目录
相关文章
|
3天前
|
设计模式 Java
Java基础—笔记—多态、final、抽象类、接口篇
该文介绍了编程中的多态、final和抽象类、接口相关概念。多态允许子类重写父类方法,通过父类引用调用子类方法,实现解耦和提高代码灵活性,但也可能导致无法使用子类特有功能,需通过强制类型转换解决。final用于修饰不可变的类、方法或变量,防止继承、重写和多次赋值。抽象类是一种包含抽象方法的类,用于强制子类重写特定方法,实现多态,适用于模板方法设计模式,解决代码重复问题。
22 0
|
3天前
|
Java
Java中的抽象类:深入了解抽象类的概念和用法
Java中的抽象类是一种不能实例化的特殊类,常作为其他类的父类模板,定义子类行为和属性。抽象类包含抽象方法(无实现)和非抽象方法。定义抽象类用`abstract`关键字,子类继承并实现抽象方法。抽象类适用于定义通用模板、复用代码和强制子类实现特定方法。优点是提供抽象模板和代码复用,缺点是限制继承灵活性和增加类复杂性。与接口相比,抽象类可包含成员变量和单继承。使用时注意设计合理的抽象类结构,谨慎使用抽象方法,并遵循命名规范。抽象类是提高代码质量的重要工具。
40 1
C4.
|
3天前
|
Java
Java抽象类
Java抽象类
C4.
22 0
|
3天前
|
安全 Java
Java 抽象类与方法:实现安全性与代码重用
在 Java 中,可以嵌套类(即类内部的类),称为内部类。嵌套类的目的是将属于一起的类分组,从而使您的代码更可读和可维护。 访问内部类 要访问内部类,请创建外部类的对象,然后创建内部类的对象:
63 0
|
3天前
|
设计模式 搜索推荐 Java
java接口和抽象类的区别,以及使用选择
java接口和抽象类的区别,以及使用选择
30 0
|
3天前
|
Java
Java 抽象类
5月更文挑战第4天
|
2天前
|
存储 Java 编译器
Java中的抽象类与接口,在阿里工作5年了
Java中的抽象类与接口,在阿里工作5年了
|
3天前
|
Java
【Java开发指南 | 第二十七篇】Java抽象类
【Java开发指南 | 第二十七篇】Java抽象类
13 0
|
3天前
|
Java
Java一分钟之-抽象类与接口的应用场景
【5月更文挑战第9天】Java中,抽象类和接口用于实现多态和抽象。抽象类不能实例化,提供部分实现和定义模板;接口包含无实现的抽象方法,用于定义行为规范和解耦合。选择时,关注行为用接口,部分实现用抽象类。注意抽象类的`final`和`static`方法、接口冲突等问题,明确设计目标,适度抽象,遵循接口设计原则,以提高代码质量。
13 1
|
3天前
|
Java 程序员 数据格式
关于Java抽象类和接口的总结和一点个人的看法
关于Java抽象类和接口的总结和一点个人的看法