Java編程在方法中哪些時(shí)候需要參數(shù)
Java在方法中什么時(shí)候需要參數(shù)
可能有很多人在學(xué)習(xí)Java的過程中,在構(gòu)建方法時(shí)總是不知道何時(shí)該寫參數(shù),何時(shí)不寫,那么接下來我們寫一個(gè)最簡(jiǎn)單的例子來說明有參數(shù)的重要性。
如圖中的例子,如果我們要計(jì)算b和c的值,只需要在調(diào)用add()方法的時(shí)候把b和c替換成你想計(jì)算的數(shù)就行了。其它的方法可以以此類推。
Java中類的無參,帶參方法重點(diǎn)總結(jié)
類的方法定義類的某種行為(或功能)
步驟一:定義方法名以及返回值類型
步驟二:編寫方法體
定義類的方法:
public ? 返回值類型 ?方法名() ?{ ? ? ? ? ? ?//方法的主體 }
方法的返回值(兩種情況)
1. 如果方法具有返回值,方法中必須使用關(guān)鍵字return返回該值,返回值類型為該返回值的類型
public class Student{ ? ? String name = "張三"; ? ? public String ?getName(){ ? ? ? ? ? ? return name; ??} ? ?//…… }
語法:return 表達(dá)式;
作用: 跳出方法、返回結(jié)果;
2. 如果方法沒有返回值,返回值類型為void
public class Student{ ? ? String name = "張三"; ? ? public void getName(){ ? ? } ? ?//…… }
方法調(diào)用:執(zhí)行方法中包含的語句
對(duì)象名.方法名();
方法之間允許相互調(diào)用,不需要知道方法的具體實(shí)現(xiàn),實(shí)現(xiàn)重用,提高效率
情況 | 舉例 |
Student類的方法a( ) 調(diào)用Student類的方法b( ), 直接調(diào)用 | public void a( ) { b( ); //調(diào)用b( ) } |
Student類的方法a( ) 調(diào)用Teacher類的方法b( ), 先創(chuàng)建類對(duì)象,然后使用“.”調(diào)用 | public void a( ) { Teacher t = new Teacher( ); t.b( ); //調(diào)用Teacher類的b() } |
成員變量和局部變量
變量聲明的位置決定變量作用域
變量作用域確定可在程序中按變量名訪問該變量的區(qū)域
成員變量和局部變量的區(qū)別
1. 作用域不同
局部變量的作用域僅限于定義它的方法
成員變量的作用域在整個(gè)類內(nèi)部都是可見的
2. 初始值不同
Java會(huì)給成員變量一個(gè)初始值
Java不會(huì)給局部變量賦予初始值
注意:
1. 在同一個(gè)方法中,不允許有同名局部變量;在不同的方法中,可以有同名局部變量
2. 在同一個(gè)類中,成員變量和局部變量同名時(shí),局部變量具有更高的優(yōu)先級(jí)
定義帶參數(shù)的方法
<訪問修飾符> ?返回類型 ?<方法名>(<形式參數(shù)列表>) { ? ? ?//方法的主體 }
訪問修飾符:該方法允許被訪問調(diào)用的權(quán)限范圍;返回類型:方法返回值的類型;形式參數(shù)列表:傳送給方法的形參列表
public class StudentsBiz { String[ ] names = new String[30]; ?? public void addName(String name) { ? (沒有返回值) //增加學(xué)生姓名 ? ? ? ? ? ? ? ? ? (一個(gè)形式參數(shù)) } public void showNames() { //顯示全部學(xué)生姓名 ? ? ? ? ? ? ? ? } }
調(diào)用帶參數(shù)的方法
對(duì)象名.方法名(參數(shù)1, 參數(shù)2,……,參數(shù)n) (實(shí)參列表)
public static void main(String[] args) { ? ? ? ? StudentsBiz st = new StudentsBiz(); ? ? ?(先實(shí)例化對(duì)象,再使用方法) ? ? ? ? Scanner input = new Scanner(System.in); ? ? ? ? for(int i=0;i<5;i++){ ? ? ? ? ? ? System.out.print("請(qǐng)輸入學(xué)生姓名:"); ? ? ? ? ? ? String newName = input.next(); ? ? ? ? ? ? st.addName(newName); ? ? ?(實(shí)參的類型、數(shù)量、順序都要與形參一一對(duì)應(yīng)) ? ? ? ? } ? ? ? ? st.showNames(); ? ? }
小結(jié)
形參和實(shí)參
- 方法定義處,參數(shù)叫做形式參數(shù),也叫形參(主要約束參數(shù)的類型的)
- 形參名字可以隨便取,但是要符合駝峰命名規(guī)則,同時(shí)要有意義
- 方法調(diào)用處,參數(shù)叫做實(shí)際參數(shù),也叫實(shí)參
- 實(shí)參名字也可以隨便取,但是遵循駝峰命名規(guī)則,同時(shí)也要有意義
- 實(shí)參和形參的類型必須一致,名字可以一致,也可以不一致
- 方法有沒有返回值,和方法有沒有參數(shù),沒有任何關(guān)系
- 方法參數(shù)可以有一個(gè),也可以有多個(gè),多個(gè)參數(shù)之間用逗號(hào)隔開(形參和實(shí)參都是這樣)
- 形整和實(shí)參數(shù)量一定要一致,數(shù)據(jù)類型一定要一致
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java設(shè)計(jì)模式之單例模式Singleton Pattern詳解
這篇文章主要介紹了Java設(shè)計(jì)模式之單例模式Singleton Pattern詳解,一些常用的工具類、線程池、緩存,數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)連接池、賬戶登錄系統(tǒng)、配置文件等程序中可能只允許我們創(chuàng)建一個(gè)對(duì)象,這就需要單例模式,需要的朋友可以參考下2023-12-12maven多個(gè)倉(cāng)庫(kù)查詢的優(yōu)先級(jí)順序案例講解
這篇文章主要介紹了maven多個(gè)倉(cāng)庫(kù)查詢的優(yōu)先級(jí)順序,考慮到我們常用的配置文件是conf/settings.xml和工程里面的pom.xml文件,我們針對(duì)這兩個(gè)文件的結(jié)合來分析倉(cāng)庫(kù)的使用順序,需要的朋友可以參考下2023-04-04解決IDEA右鍵沒有創(chuàng)建新的package選項(xiàng)的情況
這篇文章主要介紹了解決IDEA右鍵沒有創(chuàng)建新的package選項(xiàng)的情況,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-02-02分布式開發(fā)醫(yī)療掛號(hào)系統(tǒng)數(shù)據(jù)字典模塊前后端實(shí)現(xiàn)
這篇文章主要為大家介紹了分布式開發(fā)醫(yī)療掛號(hào)系統(tǒng)數(shù)據(jù)字典模塊前后端實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04Java并發(fā)(Runnable+Thread)實(shí)現(xiàn)硬盤文件搜索功能
這篇文章主要介紹了Java并發(fā)(Runnable+Thread)實(shí)現(xiàn)硬盤文件搜索,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01ArrayList和HashMap如何自己實(shí)現(xiàn)實(shí)例詳解
這篇文章主要介紹了 ArrayList和HashMap如何自己實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2016-12-12java去除空格、標(biāo)點(diǎn)符號(hào)的方法實(shí)例
這篇文章主要給大家介紹了關(guān)于java去除空格、標(biāo)點(diǎn)符號(hào)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09關(guān)于json序列化(javaBean轉(zhuǎn)Json的細(xì)節(jié)處理)
這篇文章主要介紹了關(guān)于json序列化(javaBean轉(zhuǎn)Json的細(xì)節(jié)處理),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。2022-03-03利用Java實(shí)現(xiàn)簡(jiǎn)單的詞法分析器實(shí)例代碼
眾所周知編譯原理中的詞法分析算是很重要的一個(gè)部分,原理比較簡(jiǎn)單,不過網(wǎng)上大部分都是用C語言或者C++來編寫,因?yàn)樽罱趯W(xué)習(xí)Java,故用Java語言實(shí)現(xiàn)了簡(jiǎn)單的詞法分析器。感興趣的朋友們可以參考借鑒,下面來一起看看吧。2016-12-12