簡體   English   中英

為什么 trait 可以擴展抽象類?

[英]why trait can extend abstract class?

從鏈接http://www.scala-lang.org/old/node/117

它給出了一個 trait 擴展抽象類的例子。 既然抽象類有構造函數,怎么會發生呢? 這是否意味着抽象類和特征具有相同的位置?

它們用於在類之間共享接口、字段和類型,並且它們都不可實例化。 抽象類擴展了一個特征,反之亦然。 但是由於scala中的一個類只能擴展一個超類,

abstract class A
abstract class B
trait AA extends A
class C extends AA // ok  class C's super class is A
class C extends B with AA // NG trying to have 2 super class

就像我開頭提到的,它們是不可實例化的。 所以你不需要關心抽象類的構造函數。 當創建和實例化擴展它的類時將調用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM