scala基礎語法 類定義

2021-06-28 00:20:54 字數 852 閱讀 6283

package org.xj.scala.spark

/*** .宣告類:乙個原始檔中可以包含很多類,並且scala都是public級別的

*/class basic2

/*** 定義乙個類

* scala中的var/val/def

* val和def都會被編譯為乙個方法,區別是:val會被編譯器保證執行時其值不能改變,但def不同,是可以改變的。

* var則不同,其會被編譯為兩個方法,類似get,set方法

*//**

* class person

*///1、主構造器(構造方法)直接跟在類名後面,主構造器中的引數最後會被編譯成字段

//2、主構造器執行的時候,會執行類中的所有語句

//3、假設引數宣告時,不帶val和var,那麼相當於private[this] !!!內部才能訪問的變數,

//如:class person(name: string, val age: int),這裡name外部就無法訪問

class person(var name: string, val age: int)

}//繼承父類中存在這樣的引數,則不需要重新定義,可以直接使用

//1、確保每乙個物件初始化的時候,幫你初始化和這個物件相關的所有資訊(scala構造器一大特點)

/*** 重寫父類方法(override def)

* 重寫父類字段(override val,override var)

*/class student(name: string, age: int, val major: string) extends person(name, age)

object basic2

}

scala基礎語法

一 變數定義 1 val 定義的變數值不可以修改 2 var 定義的變數值可以修改 二 一些變數型別 1 unit 表示不返回任何結果方法的結果型別,相當於void 2 null null 空引用 3 nothing 任何其他類的子型別 4 any 所有其他類的父類 5 anyref 所有引用類的基...

Scala基礎語法8 抽象類

在scala中,使用abstract修飾的類稱為抽象類,在抽象類中可以定義屬性 未實現的方法和具體實現的方法。package day03 abstract class absclass package day03 在scala中第乙個繼承抽象類或者特質,只能使用關鍵字extends 如果想繼承多個特...

Scala基礎語法 函式的定義以及元祖

方法 def 函式名 引數列表 返回型別 def main args array string unit println square 2 square是函式名 x int定義了引數的型別 int 是輸出結果型別即返回值型別 輸出結果為4 上述的方式我們還可以進行簡化 def main args a...