抽象类和具体类有什么区别

目录:

Anonim

主要区别 抽象类和具体类之间是 使用具体类时无法使用抽象类创建对象,但可以创建对象。

面向对象编程 (OOP) 是软件开发中的流行范式。它有助于轻松开发真实世界的场景。此外,它还允许程序员使用一组对象对软件进行建模。这些对象与其他对象通信以传递消息。此外,使用类创建对象。具体类是默认类。 OOP 的一大支柱是抽象。抽象类是一种实现抽象的方法。

抽象,抽象类,类,具体类,OOP

什么是抽象类

OOP 中的一个主要概念是抽象。它是隐藏内部细节并仅向用户显示功能的过程。抽象类是实现抽象的一种方法。 Java 等编程语言使用抽象关键字来表示抽象类。

抽象方法是没有实现的方法。此外,抽象类可以有抽象方法和非抽象方法。一个类可以扩展一个抽象类。然后它可以提供抽象类的抽象方法的实现。此外,抽象类可以有构造函数和静态方法。

不可能从抽象类创建对象。但是,程序员可以从扩展抽象类的类创建对象。如果抽象类中的抽象方法被声明为final,那么扩展抽象类的类就不能提供抽象方法的实现。

图 1:形状类

图 2:Square 类

Shape 是一个抽象类。它有一个叫做 draw 的抽象方法和一个叫做 display 的非抽象方法。此外,Square 类扩展了 Shape。因此,Square 类可以从 Shape 类中的抽象方法(draw)提供一个实现。

图 3:主类

Square 的一个对象是在 main 方法中创建的。最后,使用该对象调用 draw 方法。它在控制台上显示“Square”。

什么是具体类

具体类是没有任何未实现方法的类。 Java 等编程语言使用 class 关键字来表示一个类。具体类是创建对象的蓝图。它有属性和方法。属性代表属性或数据,而方法代表类的行为。这些属性和方法是类的成员。

图 4:具体类

上面是一个名为 Rectangle 的具体类。在这里,它有两个私有属性:长度和宽度。它还有一个名为 Rectangle 的构造函数来为属性提供初始值。此外,还有一种称为 displayArea 的方法。

抽象类和具体类的区别

定义

抽象类是用抽象关键字声明的类,它是抽象和非抽象方法的集合,而具体类是允许使用 new 关键字创建实例或对象的类。因此,这是抽象类和具体类之间的主要区别。

对象创建

程序员不能使用抽象类创建对象,而程序员可以使用具体类创建对象。

方法

抽象类具有未实现的方法,而具体类中的所有方法都已实现。

结论

简而言之,OOP是软件开发的主要范式,抽象类和具体类是与OOP相关的两个概念。抽象类和具体类之间的主要区别在于,不能使用抽象类创建对象,而可以使用具体类创建对象。

参考:

1.“Java中的对象| Java 类 – Javatpoint。” www.javatpoint.com,可在此处获得。 2.“Java 中的抽象类——Javatpoint”。 www.javatpoint.com,可在此处获得。

抽象类和具体类有什么区别