国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Chisel(三) Scala語法 類與對象

學FPGA,慢慢來 ? 2019-08-19 23:29 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在Scala中,類是使用關鍵字“class”開頭的代碼定義的,定義完成類之后,就可以“new類名”的方式來構造一個對象,而這個對象的類型就是類。在類之中,可以定義val或var類型的變量,也可以定義“def”函數,這些都統稱方法。字段和方法統稱“成員”。字段通常運用于保存對象的狀態與數據,而方法則用于承擔對象的計算任務。

在外部想要訪問成員時,可以使用“對象.成員”的形式來訪問,“val”類型的變量只能與初始化時的對象綁定。Scala的類成員默認都是共有的,都可以使用“對象.成員”的方式來訪問。

在Scala中不需要顯式定義構造方法,而是把類內部非字段、非方法的代碼都當做“主構造方法”,而且,類名后面可以定義若干個參數列表,用于接收參數,這些參數將在構造對象時用于初始化字段并傳遞給主構造方法使用。除了主構造方法,還可以定義若干個輔助構造方法。輔助構造方法都是以“defthis(...)”來開頭的,而且第一步行為必須是調用該類的另一個構造方法,即第一句語句必須是“this(...)”——要么是主構造方法,要么是之前的另一個輔助構造方法。

scala> class Students(n: String) {

| val name = n

| def this() = this("None")

| println("A student named " + n + " has been registered.")

| }

defined class Students

scala> val stu = new Students

A student named None has been registered.

stu: Students = Students@74309cd5

在這個例子中,定義了一個輔助構造方法,該方法是無參的,其行為也僅是給主構造方法傳遞一個字符串“None”。在后面創建對象時,缺省了參數,這樣與主構造方法的參數列表是不匹配的,但是與輔助構造方法匹配,所以stu指向的對象是用輔助構造方法構造的。

Java里,輔助構造方法可以調用超類的構造方法,而Scala加強了限制,只允許主構造方法調用超類的構造方法(詳情見后續章節)。這種限制源于Scala為了代碼簡潔性與簡單性做出的折衷處理。

————————————————

版權聲明:本文為CSDN博主「_iChthyosaur」的原創文章,遵循CC 4.0 by-sa版權協議,轉載請附上原文出處鏈接及本聲明。

原文鏈接:https://blog.csdn.net/qq_34291505/article/details/86760620

如果在類名與類的參數列表之間加上關鍵字“private”,那么主構造方法就是私有的,只能被內部定義訪問,外部代碼構造對象時就不能通過主構造方法進行。

主函數是Scala程序的唯一入口,即程序是由主函數開始運行的,要提供這樣的入口,則必須在某個單例對象里定義一個名為“main”的函數,而且這個函數只有一個參數,類型是字符串數組Array[String],函數的返回類型是Unit。任何符合條件的單例對象都能成為程序的入口。



聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • scala
    +關注

    關注

    0

    文章

    42

    瀏覽量

    6900
  • Chisel
    +關注

    關注

    0

    文章

    7

    瀏覽量

    587
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    如何分辨五網線

    分辨五與六網線的方法如下: 外皮標識 五網線外皮標注“CAT5”,六網線標注“CAT6”。這是最直觀的區分方式,標識直接表明網線的類別。 傳輸性能 五
    的頭像 發表于 01-28 10:21 ?1096次閱讀

    C與C++之間的聯系

    1、語法兼容性: C++完全兼容C語言的語法,這意味著任何有效的C語言程序都可以直接在C++編譯器下編譯通過。 2、底層控制: C++雖然增加了許多高級特性,但它仍然保持了對硬件資源的低級
    發表于 12-11 06:51

    C語言和C++之間的區別是什么

    區別 1、面向對象編程 (OOP): C語言是一種面向過程的語言,它強調的是通過函數將任務分解為一系列步驟進行執行。 C++在C語言的基礎上擴展了面向對象的特性,支持(class)、封裝、繼承
    發表于 12-11 06:23

    圖解碼說-六大UML圖關系(依賴,繼承,實現,關聯,聚合,組合)

    UML 圖是面向對象設計的 “施工圖”,而依賴、繼承、實現、關聯、聚合、組合這六大關系,就是圖中定義互動規則的核心 “語法”。掌握它
    的頭像 發表于 11-05 09:03 ?678次閱讀
    圖解碼說-六大UML<b class='flag-5'>類</b>圖關系(依賴,繼承,實現,關聯,聚合,組合)

    語法糾錯和testbench的自動生成

    在編寫Verilog代碼時,我一般都是先在編輯器上寫完,因為編輯器vscode或者notepad++可以提供語法高亮和自動補全等功能,然后用仿真器跑仿真,但是在編寫過程中不可避免的會有一些語法的錯誤
    發表于 10-27 07:07

    跳線VS超五/超六——如何選擇“網絡血管”?

    在布線工程中,選對跳線類型直接影響網絡性能與成本。六跳線雖非“全能選手”,但在特定場景下性價比突出。 一、六跳線VS超五:千兆網絡的“分水嶺” 案例:某小區升級千兆光纖到戶,若使用超五
    的頭像 發表于 10-21 10:24 ?1026次閱讀
    六<b class='flag-5'>類</b>跳線VS超五<b class='flag-5'>類</b>/超六<b class='flag-5'>類</b>——如何選擇“網絡血管”?

    程序編譯運行正常但是顯示語法錯誤,為什么?

    樣例程序:can_sample.c rtconfig.h里啟用了#define RT_CAN_USING_HDR 代碼從圖中這里開始大段標識語法錯誤: 跳轉到宏
    發表于 09-25 06:27

    canopen如何通過對象字典控制外設?

    各位大佬好,我在移植canopen的時候碰到一個疑問。比如我修改對象字典2000,子索引為0這個目錄下的值,如何這個對象映射的是某個led燈的亮滅,輸入1為亮,0為滅。 問題就是我發送報文之后會進入
    發表于 09-11 06:04

    網線接口能插六網線嗎

    網線接口(RJ45)可以插六網線,但實際使用效果需結合具體場景和設備綜合判斷。以下是詳細分析: 一、物理兼容性:接口通用,但需注意細節 RJ45接口標準統一 五(Cat5)、超五
    的頭像 發表于 09-08 10:32 ?6643次閱讀

    網線面板分五

    網線面板確實分五和六,這種分類主要基于其適配的網線類型及傳輸性能,以下是具體說明: 一、分類依據 適配網線類型 五面板:專為五網線(CAT5)設計,適用于百兆以太網(100Mb
    的頭像 發表于 08-08 09:46 ?4349次閱讀

    網線能用六水晶頭嗎

    網線可以使用六水晶頭,但需注意兼容性和實際效果,且通常不建議長期或關鍵場景下這樣搭配。 以下是詳細分析: 一、五網線與六水晶頭的兼容性 物理結構兼容性 線徑與排列:五
    的頭像 發表于 08-06 10:29 ?9006次閱讀
    五<b class='flag-5'>類</b>網線能用六<b class='flag-5'>類</b>水晶頭嗎

    鴻蒙開發如何顯示Markdown格式語法 -- markdown_hm介紹

    在開發過程中,對于內容的展示通常有富文本和Markdown兩種,后者更偏向于技術文檔、說明書一的內容展示。但是和富文本不同的是,沒有一個原生組件可以用來解析展示Markdown語法的內容,所以
    發表于 06-30 18:47

    網線超6與6的區別

    網線超6(Cat 6a)與6(Cat 6)的主要區別如下: 1. 傳輸性能 6網線(Cat 6): 支持最高250 MHz的帶寬。 適用于千兆以太網(1 Gbps),最大傳輸距離100米。 超
    的頭像 發表于 04-16 10:04 ?1.5w次閱讀

    買水晶頭如何匹配超5 67

    購買與超5、6、7網線匹配的水晶頭時,需遵循以下原則,以確保傳輸性能、穩定性和兼容性: 一、匹配原則 超5網線 推薦搭配:超5水晶
    的頭像 發表于 03-26 10:05 ?6684次閱讀

    如何使用OpenVINO?運行對象檢測模型?

    無法確定如何使用OpenVINO?運行對象檢測模型
    發表于 03-06 07:20