抽象的目的是什么?

时间:2019-10-02 04:06:03

标签: java scala kotlin jvm

你好,我是大学新生。刚刚进行了有关面向对象编程的研究,而我正在研究的语言是Kotlin,但是我找不到真正需要使用抽象类或方法的真正原因。

例如:

abstract class Student(name: String, age: Int) {

    init {
        println("Student name is: $name")
        println("Student age is: $age")
    }

    //non-abstract function
    fun demo() {
        println("Non-abstract function of abstract class")
    }

    //abstract function
    abstract fun func(message: String)
}

class College(name: String, age: Int): Student(name, age) {

    override fun func(message: String) {
        println(message)
    }
}

fun main(args: Array<String>) {
    val obj = College("Chaitanya", 31)
    obj.func("I'm a Blogger")
    obj.demo()
}

引用:https://beginnersbook.com/2019/03/kotlin-abstract-class/

这怎么只显示基本数据?

2 个答案:

答案 0 :(得分:2)

抽象的目的是让您可以忽略与您无关的细节。当我使用对象列表时,通常我想添加,删除和迭代。我不要担心担心调整基础数组的大小或添加和删除链接的节点。通过使用the abstract interface List,我可以将这些详细信息放在一个盒子中,而不必考虑它们。

抽象类只是一种抽象,通常不如接口重要。它们的主要用途是允许您在一个共享的地方收集共同的特征,以减少重复。例如,如果我有一个List,我总是需要一种对其进行迭代的方法,并且没有一种比遍历列表来查找项目更有效的方法来实现contains方法。我可以将此方法放在an abstract class中,然后列表的实际实现(数组,链接,其他方式)仅需要提供一种迭代方法。

答案 1 :(得分:0)

简单

实际上,抽象的目的是从较大的池中选择数据,以仅显示对象的相关详细信息。它有助于减少编程的复杂性和工作量

抽象类是它允许您将几个相关的类分组为同级,并有助于降低软件设计和实现过程的复杂性。

抽象类有助于描述行为的通用类型和面向对象的编程类层次结构。它还描述了子类,以提供抽象类的实现细节。

大多数情况下都声明了抽象方法,其中两个或多个子类也通过不同的实现以不同的方式完成相同的事情。它还扩展了相同的Abstract类并提供了抽象方法的不同实现。