一天学完spark的Scala基础语法教程十、类和对象(idea版本)
📋前言📋
💝博客主頁(yè):紅目香薰_CSDN博客-大數(shù)據(jù),計(jì)算機(jī)理論,MySQL領(lǐng)域博主💝
?本文由在下【紅目香薰】原創(chuàng),首發(fā)于CSDN?
🤗2022年最大愿望:【服務(wù)百萬(wàn)技術(shù)人次】🤗
💝初始環(huán)境地址:【spark環(huán)境搭建(idea版本)_紅目香薰-CSDN博客】💝
環(huán)境需求
環(huán)境:win10
開(kāi)發(fā)工具:IntelliJ IDEA 2021.2
maven版本:3.6.3
創(chuàng)建測(cè)試類【day1/demo10.scalc】,類型為【Object】
?
Scala 類和對(duì)象
類是對(duì)象的抽象,而對(duì)象是類的具體實(shí)例。類是抽象的,不占用內(nèi)存,而對(duì)象是具體的,占用存儲(chǔ)空間。類是用于創(chuàng)建對(duì)象的藍(lán)圖,它是一個(gè)定義包括在特定類型的對(duì)象中的方法和變量的軟件模板。
示例
package day1object demo10 {def main(args: Array[String]): Unit = {var de=new demo10_class();//通過(guò)new創(chuàng)建對(duì)象println(de.toMax(5,6))} }class demo10_class{def toMax(x:Int,y:Int):Int={if(x>y){return x;}return y;} }【class】類關(guān)鍵字
class關(guān)鍵字修飾的是類,只有通過(guò)class修飾的類才能被【new】創(chuàng)建,這里就不能再次創(chuàng)建【object】類型了,可以自行測(cè)試,會(huì)報(bào)錯(cuò)的。
new,在內(nèi)存中創(chuàng)建出一個(gè)地址,存儲(chǔ)了這個(gè)類的信息。
var de=new demo10_class();//通過(guò)new創(chuàng)建對(duì)象對(duì)象
對(duì)象就是一個(gè)特指,這個(gè)對(duì)象有其自身的【屬性】以及【方法】。
例如:單獨(dú)說(shuō)公交車,它是一個(gè)類,但是你要說(shuō),石家莊車牌為冀A *****的1路公交車,那么它就是對(duì)象,有具體的針對(duì)性。
Scala 繼承
Scala繼承一個(gè)基類跟Java很相似, 但我們需要注意以下幾點(diǎn):
- 1、重寫一個(gè)非抽象方法必須使用override修飾符。
- 2、只有主構(gòu)造函數(shù)才可以往基類的構(gòu)造函數(shù)里寫參數(shù)。
- 3、在子類中重寫超類的抽象方法時(shí),你不需要使用override關(guān)鍵字。
接下來(lái)讓我們來(lái)看個(gè)實(shí)例:
package day1object demo10 extends demo10_class {def main(args: Array[String]): Unit = {//由于繼承了【demo10_class】類,故而可以直接使用println(toMax(51,6))} }class demo10_class{def toMax(x:Int,y:Int):Int={if(x>y){return x;}return y;} }重寫
這里我就留了一個(gè)簡(jiǎn)單的實(shí)例重寫,繼承了父類,所以可以直接用super
package day1object demo10 extends demo10_class {//重寫override def toMax(x: Int, y: Int): Int = super.toMax(x, y)def main(args: Array[String]): Unit = {//由于繼承了【demo10_class】類,故而可以直接使用println(toMax(51,66))} }class demo10_class{def toMax(x:Int,y:Int):Int={if(x>y){return x;}return y;} }功能依然都是正常可用的。
?
總結(jié)
到這里有關(guān)一天學(xué)完spark的Scala基礎(chǔ)語(yǔ)法教程十、類和對(duì)象(idea版本)就結(jié)束了
希望能對(duì)大家有所幫助。
歡迎一鍵三連,謝謝。
總結(jié)
以上是生活随笔為你收集整理的一天学完spark的Scala基础语法教程十、类和对象(idea版本)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 一天学完spark的Scala基础语法教
- 下一篇: 有关一百以内数字的Python算法