1、函式定義
class person
def getname = name }
val p = new person
println(p.name)// 呼叫的是內部自動生成的getter方法,結果:spark
p.name = "scala"//呼叫的是內部自動生成的setter方法
println(p.name)//結果:scala
2、自定義setter方法
class person
def name = this.myname //getter和setter名稱要相同(藍色部分) }
val p = new person
p.name_=("scala")//呼叫自定義setter方法,或者直接通過p.name = "scala"賦值,結果一樣
println(p.name)//結果:scala
3、構造器
classpersondef this(myname: string, myage: int)
}
valp =newperson("scala",15)println(p.age
)
4.object
// object通常放置靜態物件,該person是class person的伴生物件,且main方法放在object裡面
object person
5.抽象類與繼承(final類不能被繼承)
abstract rdd
class jdbcrdd extends rdd
}6.scala不支援多繼承,但支援混入(with特質)
trait logging{}//trait相當於介面,可以用extends或with
class jdbcrdd extends rdd with logging
Scala物件導向二
1.抽象類 在scala 中,使用 abstract 修飾的類稱為抽象類,在抽象類中可以定義屬性 未實現的方法和具體實現的方法 abstract class animal 2.繼承 繼承是物件導向的概念,用於 的可重用性,被擴充套件的類稱為超類或父類,擴充套件的類稱為派生類或子類,scala 可以通...
python之物件導向二
什麼時候用到多型?如果我們需要用到父類的方法的時候而且要修改父類方法的時候,或者想呈現出不同的效果是就會用到多型 這裡舉個小例子 class person object def get name self print 張三 class studens person 繼承自person類 def ge...
python之物件導向(二)
針對類物件定義的屬性 使用賦值語句在class關鍵字下可以定義類屬性 當我們定義了乙個類屬性後,這個屬性雖然歸類所有,但類的所有例項都可以訪問到,當例項並沒有該屬性,所以會繼續查詢class的該屬性 class fairy name jing 定義類屬性 print fairy.name xiann...