淺談方法參數傳遞和返回值

在學方法的時候,我們會學到如何在主方法中調用方法。在調用方法的時候會涉及到參數傳遞和返回值的問題,今天,我們就談談方法中的參數傳遞和返回值。

參數傳遞

簡單來講,方法的參數傳遞,無非就是調用方法的時候,傳遞值或者引用,用形式參數類接收值或者引用,進而在方法中使用形式參數。
具體點講,參數傳遞的時候,實參類型不同的話,就需要用不同類型的形參來進行接收。
注意:實參可以和形參不同,兩者互不影響。

下面就分類型來談談參數傳遞。

基本數據類型

基本數據類型的變量進行參數傳遞的時候,需要用基本數據類型的形式參數進行接收。

特點:基本數據類型在傳遞參數的時候,傳遞的是變量(實參)的,在方法中用形式參數進行接收,且對形式參數進行一系列操作如賦值,並不會改變實參的值。所以,這樣的參數傳遞也稱爲值傳遞。

在這裏插入圖片描述

引用類型

引用類型的量在進行參數傳遞的時候,需要用引用類型的形式參數進行接收。

數組以及面向對象中的類等都是引用類型。
特點:引用類型在參數傳遞的視乎,傳遞的是引用(即地址值),在方法中用形式參數進行接收,且對形式參數進行一系列操作的時候,會改變引用指向的內存空間的值。所以,這樣的參數傳遞也稱爲引用(地址)傳遞。

在這裏插入圖片描述

在學習面向對象的時候,我們遇到了類、抽象類、接口等概念。若參數傳遞時,需要的是這些類型,那麼我們如何進行參數傳遞呢?

若方法中參數傳遞需要的是一個類 類型,那麼我們需要傳遞的是該類的一個對象。類是一個抽象的概念。對象是類的具體、實例化,我們可以對對象進行操作,但是我們無法對類進行操作。

在這裏插入圖片描述

抽象類

若方法中參數傳遞需要的是一個抽象類 類型,那麼我們需要傳遞的是該抽象類的一個子類對象。(抽象類不能實例化,可以採用多態形式)

在這裏插入圖片描述

接口

若方法中參數傳遞需要的是一個接口 類型,那麼我們需要傳遞的是該接口的一個子類對象。(接口不能實例化,可以採用多態形式)

在這裏插入圖片描述

返回值

根據方法的返回值類型來判斷我們是否需要返回一個值。若方法返回值類型爲void,那麼該方法就不需要返回值。除此之外,就需要根據方法返回值類型來返回對應的值。返回值有點類似參數傳遞。

根據返回值類型的不同來具體談談返回值。

基本數據類型

若方法的返回值類型爲基本數據類型,那麼就返回該數據類型對應的值。

在這裏插入圖片描述

引用數據類型

若方法的返回值類型爲引用數據類型,那麼就返回該引用類型的對應的值(如數組)或者對象(如類)。

數組

若返回值類型爲數組,那麼直接返回數組名即可。

在這裏插入圖片描述

若返回值類型爲類 類型,那麼需要返回的是該類的一個對象。

在這裏插入圖片描述

抽象類

若返回值類型爲抽象類 類型,那麼需要返回的是該抽象類的一個子類對象。(抽象類不能實例化,可以採用多態形式)

在這裏插入圖片描述

接口

若返回值類型爲接口 類型,那麼需要返回的值該接口的一個子類對象。(接口不能實例化,可以採用多態形式)

在這裏插入圖片描述

針對方法的參數傳遞和返回值問題,可以總結如下:

一:若方法的形參或者返回值,要一個基本數據類型,那麼就傳入或者返回該基本數據類型的值。

二:若方法的形參或者返回值,要一個引用數據類型,那麼就傳入或者返回該引用。

  • 若方法的形參或者返回值,要一個數組類型,那麼就傳入或者返回數組名。
  • 若方法的形參或者返回值,要一個 類型,那麼就傳入或者返回該類的一個對象。
  • 若方法的形參或者返回值,要一個抽象類 類型,那麼就傳入或者返回該抽象類的一個子類對象。(抽象類不能實例化,可以採用多態形式)
  • 若方法的形參或者返回值,要一個接口 類型,那麼就傳入或者返回該接口的一個子類對象。(接口不能實例化,可以採用多態形式)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章