scala的多態(tài)方法怎么使用

這篇文章主要介紹“scala的多態(tài)方法怎么使用”,在日常操作中,相信很多人在scala的多態(tài)方法怎么使用問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”scala的多態(tài)方法怎么使用”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)、成都網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)安慶免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千多家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

所謂的“多態(tài)”,簡(jiǎn)單的理解就是對(duì)象在不同  情況下的不同表現(xiàn),具體體現(xiàn)在定義和功能兩個(gè)方面,簡(jiǎn)單的總結(jié)一下,多態(tài)可以用“三個(gè)定義和兩個(gè)方法”來總結(jié)。三個(gè)定義分別是父類定義子類構(gòu)建、接口定義實(shí)現(xiàn)類構(gòu)建和抽象類定義實(shí)體類構(gòu)建,而兩個(gè)方法分別是方法重載和方法重寫。
方法重載的概念比較好理解,簡(jiǎn)單的說,就是在同一個(gè)類中,定義了多個(gè)方法,具有相同的方法名稱和不同的參數(shù)列表。方法重載只看名稱和參數(shù)列表,其他的都不看,包括返回值類型、屬性修飾符、范圍限定等,這些都不影響方法重載的概念。
Scala 中的方法可以按類型和值進(jìn)行參數(shù)化。   語(yǔ)法和泛型類類似。   類型參數(shù)括在方括號(hào)中,而值參數(shù)括在圓括號(hào)中。  
看下面的例子:
def listOfDuplicates[A](x: A, length: Int): List[A] = {  if (length < 1)    Nil  else    x :: listOfDuplicates(x, length - 1)}println(listOfDuplicates[Int](3, 4))  println(listOfDuplicates("La", 8))

方法 listOfDuplicates 具有類型參數(shù) A 和值參數(shù) xlength。值 xA 類型。如果 length < 1,我們返回一個(gè)空列表。否則我們將 x 添加到遞歸調(diào)用返回的重復(fù)列表中。(注意,:: 表示將左側(cè)的元素添加到右側(cè)的列表中。)

上例中第一次調(diào)用方法時(shí),我們顯式地提供了類型參數(shù) [Int]。因此第一個(gè)參數(shù)必須是 Int 類型,并且返回類型為 List[Int]。

上例中第二次調(diào)用方法,表明并不總是需要顯式提供類型參數(shù)。編譯器通??梢愿鶕?jù)上下文或值參數(shù)的類型來推斷。在這個(gè)例子中,"La" 是一個(gè) String,因此編譯器知道 A 必須是 String。

到此,關(guān)于“scala的多態(tài)方法怎么使用”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

本文題目:scala的多態(tài)方法怎么使用
文章鏈接:http://bm7419.com/article36/pssipg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)公司網(wǎng)站排名、外貿(mào)建站、品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)