<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 2.5 方法、參數和返回值 迄今為止,我們一直用“函數”(Function)這個詞指代一個已命名的子例程。但在Java里,更常用的一個詞卻是“方法”(Method),代表“完成某事的途徑”。盡管它們表達的實際是同一個意思,但從現在開始,本書將一直使用“方法”,而不是“函數”。 Java的“方法”決定了一個對象能夠接收的消息。通過本節的學習,大家會知道方法的定義有多么簡單! 方法的基本組成部分包括名字、參數、返回類型以及主體。下面便是它最基本的形式: ``` 返回類型 方法名( /* 參數列表*/ ) {/* 方法主體 */} ``` 返回類型是指調用方法之后返回的數值類型。顯然,方法名的作用是對具體的方法進行標識和引用。參數列表列出了想傳遞給方法的信息類型和名稱。 Java的方法只能作為類的一部分創建。只能針對某個對象調用一個方法(注釋③),而且那個對象必須能夠執行那個方法調用。若試圖為一個對象調用錯誤的方法,就會在編譯期得到一條出錯消息。為一個對象調用方法時,需要先列出對象的名字,在后面跟上一個句點,再跟上方法名以及它的參數列表。亦即`對象名.方法名(參數1,參數2,參數3...)`。舉個例子來說,假設我們有一個方法名叫`f()`,它沒有參數,返回的是類型為`int`的一個值。那么,假設有一個名為`a`的對象,可為其調用方法`f()`,則代碼如下: ``` int x = a.f(); ``` 返回值的類型必須兼容x的類型。 象這樣調用一個方法的行動通常叫作“向對象發送一條消息”。在上面的例子中,消息是`f()`,而對象是`a`。面向對象的程序設計通常簡單地歸納為“向對象發送消息”。 ③:正如馬上就要學到的那樣,“靜態”方法可針對類調用,毋需一個對象。 ## 2.5.1 參數列表 參數列表規定了我們傳送給方法的是什么信息。正如大家或許已猜到的那樣,這些信息——如同Java內其他任何東西——采用的都是對象的形式。因此,我們必須在參數列表里指定要傳遞的對象類型,以及每個對象的名字。正如在Java其他地方處理對象時一樣,我們實際傳遞的是“引用”(注釋④)。然而,引用的類型必須正確。倘若希望參數是一個“字符串”,那么傳遞的必須是一個字符串。 ④:對于前面提及的“特殊”數據類型`boolean`,`char`,`byte`,`short`,`int`,`long`,,`float`以及`double`來說是一個例外。但在傳遞對象時,通常都是指傳遞指向對象的引用。 下面讓我們考慮將一個字符串作為參數使用的方法。下面列出的是定義代碼,必須將它置于一個類定義里,否則無法編譯: ``` int storage(String s) { return s.length() * 2; } ``` 這個方法告訴我們需要多少字節才能容納一個特定字符串里的信息(字符串里的每個字符都是16位,或者說2個字節、長整數,以便提供對Unicode字符的支持)。參數的類型為`String`,而且叫作`s`。一旦將`s`傳遞給方法,就可將它當作其他對象一樣處理(可向其發送消息)。在這里,我們調用的是`length()`方法,它是`String`的方法之一。該方法返回的是一個字符串里的字符數。 通過上面的例子,也可以了解`return`關鍵字的運用。它主要做兩件事情。首先,它意味著“離開方法,我已完工了”。其次,假設方法生成了一個值,則那個值緊接在`return`語句的后面。在這種情況下,返回值是通過計算表達式`s.length()*2`而產生的。 可按自己的愿望返回任意類型,但倘若不想返回任何東西,就可指示方法返回`void`(空)。下面列出一些例子。 ``` boolean flag() { return true; } float naturalLogBase() { return 2.718; } void nothing() { return; } void nothing2() {} ``` 若返回類型為`void`,則`return`關鍵字唯一的作用就是退出方法。所以一旦抵達方法末尾,該關鍵字便不需要了。可在任何地方從一個方法返回。但假設已指定了一種非`void`的返回類型,那么無論從何地返回,編譯器都會確保我們返回的是正確的類型。 到此為止,大家或許已得到了這樣的一個印象:一個程序只是一系列對象的集合,它們的方法將其他對象作為自己的參數使用,而且將消息發給那些對象。這種說法大體正確,但通過以后的學習,大家還會知道如何在一個方法里作出決策,做一些更細致的基層工作。至于這一章,只需理解消息傳送就足夠了。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看