日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

一篇文章帶你了解Java方法的使用

瀏覽:30日期:2023-12-05 11:04:48
目錄方法的基本用法 方法定義基本語法格式:為什么方法一般用public static修飾?代碼示例:注意事項: 方法調用的調試過程IDEA 的調試過程: 開始調試,點擊'甲殼蟲'注意事項: 暫停調試方法的重復調用:🔺實參和形參的關系代碼示例:原因分析:解決方法:結論: 方法的重載 (Overload) 什么是方法重載? 舉例:解決方法:🔺重載和重寫的區別是什么?方法的遞歸 什么是遞歸?遞歸代碼示例:代碼過程分析:遞歸的理解總結方法的基本用法 方法定義

方法就是一個功能

方法就是一個代碼片段,類似于 C 語言中的 “函數”

基本語法格式:

//方法定義修飾符 返回值類型 方法名稱([形式參數列表 ...]){方法體; [return 返回值];}

注意事項:

在現階段,方法的修飾暫時采用—> public static 固定搭配[ ]內部的表示可有可無方法必須定義在類中方法名要采用小駝峰的形式Java中的返回值可有可無,看業務需求,若有返回值,返回值類型需要和方法的返回值類型匹配行書參數列表:形參,是實參的一份拷貝方法體:具體功能的實現為什么方法一般用public static修飾?

因為當前所有方法寫完之后,若調用,都會在main方法中調用,而main方法是public static的

代碼示例:

public class DemoOne { // 實現一個兩個整數相加的方法 public static int add(int x,int y){return x+y; } public static void main(String[] args) {int a = 212;int b = 454;//方法調用int ret = add(a,b);System.out.println(ret); }}注意事項: 方法定義時,參數可以沒有,若有參數,每個參數要指定類型 方法定義時,返回值也可以沒有,比如main方法,如果沒有返回值,則返回值類型必須寫成 void 方法定義不能嵌套 Java 中沒有 “函數聲明” 這個概念 方法必須定義在類之中,方法定義的位置在調用位置的上方或者下方均可 方法調用的調試過程

一個程序猿最厲害的不在于能寫出多牛X的代碼,而是能夠解決代碼的問題!!

IDEA 的調試過程:

打斷點

一篇文章帶你了解Java方法的使用

開始調試,點擊'甲殼蟲'

一篇文章帶你了解Java方法的使用

點擊后,會出現下邊這個框

一篇文章帶你了解Java方法的使用

注意事項: 參數傳遞完畢后,就會執行到方法代碼體 定義方法的時候, 不會執行方法的代碼. 只有調用的時候才會執行 一個方法可以被多次調用 (遇到 return ) 方法執行完畢后,回到方法調用位置繼續執行 當方法被調用時,會將實參賦值給形參 Java中只有按值傳遞 暫停調試

一篇文章帶你了解Java方法的使用

方法的重復調用:

//求三個數的最大值public static int maxThreeNum(int num1,int num2,int num3){return maxNum(maxNum(num1,num2),num3); //方法的重復調用}//兩個數的最大值public static int maxNum(int x,int y){ return x>y ? x : y;}public static void main(String[] args) {Scanner scan = new Scanner(System.in);int num1 = scan.nextInt();int num2 = scan.nextInt();int num3 = scan.nextInt();int max = maxThreeNum(num1,num2,num3);System.out.println('max='+max);}🔺實參和形參的關系

形參只是方法在定義時需要借助的一個變量,用來保存方法在調用時傳遞過來的值

代碼示例:

交換兩個整型變量public static void swap(int x,int y){int tmp = x;x = y; y = tmp;}public static void main(String[] args) { //交換兩個整數 int a = 10; int b = 20; swap(a,b); System.out.println(a + ' ' + b);}

運行后會發現,這個方法不能實現交換兩個整型變量的功能

可用類和對象 / 數組 來實現,后邊會講到

原因分析:

方法里交換的是形參 x 和 y 的值,而main方法中打印的是實參 a 和 b 的值

一篇文章帶你了解Java方法的使用

實參a和b是main方法中的兩個變量,其空間在main方法的棧(一塊特殊的內存空間)中,而形參x和y是swap方法中的兩個變量,x和y的空間在swap方法運行時的棧中,因此:實參a和b 與 形參x和y是兩個沒有任何關聯性的變量,在swap方法調用時,只是將實參a和b中的值拷貝了一份傳遞給了形參x和y,因此對形參x和y操作不會對實參a和b產生任何影響。

解決方法:

這里不過多解釋,之后寫數組章節再作解釋

public static void main(String[] args) {int[] arr = {10, 20}; swap(arr); System.out.println('arr[0] = ' + arr[0] + ' arr[1] = ' + arr[1]);}public static void swap(int[] arr) { int tmp = arr[0]; arr[0] = arr[1]; arr[1] = tmp;}結論: 在Java中,實參的值永遠都是拷貝到形參中,形參和實參本質是兩個實體 對于基礎類型來說,形參相當于實參的拷貝,即:傳值調用 方法的重載 (Overload) 什么是方法重載? 舉例:

在方法sumInt中,若要求兩小數之和,就不能實現,必須再寫一個sumDouble方法,這樣使用很不靈活

兩整數之和public static int sumInt(int x,int y){ return x+y;}兩小數之和public static double sumDouble(double x,double y){ return x+y;}解決方法:

方法1 兩整數之和 public static int sum(int x,int y){ return x+y;}方法2 兩小數之和 public static double sum(double x,double y){ return x+y;}public static void main(String[] args) { double a = 19.9; double b = 18.8; double ret = sum(a,b); //直接使用 sum System.out.println(ret);}

上述方法1 和方法2 的關系就是重載

構成重載的 3 個條件:

方法名必須相同 返回值可以不同 參數列表必須不同(參數的個數不同 / 參數的類型不同) (注意事項) 同一個類當中🔺重載和重寫的區別是什么?

方法的重載和重寫都是實現多態的方式,區別:重載實現的是編譯時的多態性,而重寫實現的是運行時的多態性

①.重載發生在一個類中,同名的方法如果有不同的參數列表(參數類型不同 / 參數個數不同)則視為重載②.重寫發生在子類與父類之間,重寫要求子類被重寫方法與父類被重寫方法有相同的參數列表,有兼容的返回類型,比父類被重寫方法更好訪問,不能比父類被重寫方法聲明更多的異常。

重載對返回類型沒有特殊的要求,不能根據返回類型進行區分。

方法的遞歸 什么是遞歸?

一個方法在執行過程中對自身的調用,稱為'遞歸'

方法要調用自己本身 要有一個趨近于終止的條件 想辦法推導出'遞歸'的公式 遞歸代碼示例:

求n的階乘:

public static int factor(int n){if(n == 1){ return 1;}return n * factor(n-1);}代碼過程分析:

一篇文章帶你了解Java方法的使用

遞歸的理解

'遞' '歸'理解:

一篇文章帶你了解Java方法的使用

棧的角度理解:

方法的調用是要在棧上開辟內存的,給這個方法開辟棧幀

一篇文章帶你了解Java方法的使用

思考遞歸,要橫向思考,不要試圖去走進遞歸的代碼,代碼執行,是縱向執行

總結

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注好吧啦網的更多內容!

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产精品久久久久久久久久白浆 | 国产一区二区久久久久| 成人羞羞在线观看网站| 久久国产精品美女| 国产伦精品一区二区三区在线播放| 免费在线观看视频一区| 中文字幕av一区二区三区人| 亚洲精品在线国产| 国产精品极品| 中文字幕成在线观看| 日韩欧美国产精品综合嫩v| 成人亚洲欧美| 亚洲大全视频| 综合色一区二区| 日本一区二区中文字幕| 国产精品sss在线观看av| 国产精品香蕉| 国产色播av在线| 在线国产一区二区| 青青草91视频| 天堂资源在线亚洲| 欧美亚洲福利| 91精品国产调教在线观看| 丝袜美腿高跟呻吟高潮一区| 国产精品伦一区二区| 日韩欧美精品综合| 日韩一区二区三区在线看| 精品三级久久久| 日本欧洲一区二区| 成人日韩av| 视频精品一区二区| 久久av网站| 婷婷国产精品| 精品一二三区| 日韩区欧美区| 日本久久成人网| 91精品国产自产精品男人的天堂| 日韩视频网站在线观看| 国产日韩欧美三级| 日韩和的一区二在线| 麻豆精品蜜桃视频网站| 99久久99久久精品国产片果冰 | 久久精品国产网站| 欧美日韩一区二区三区四区在线观看| 97精品国产福利一区二区三区| 久久久人人人| av最新在线| 精品久久久中文字幕| 欧美久久久网站| 日韩一区二区三区精品视频第3页| 欧美日韩中文一区二区| 97精品国产福利一区二区三区| 日韩黄色在线观看| 亚洲麻豆一区| 亚洲欧美日韩国产一区| 在线一区免费| 日韩中文影院| 久久国产成人午夜av影院宅| 成人影视亚洲图片在线| 精品国产欧美日韩| 国产精品久久久久久模特| 日韩精品亚洲专区| 三级欧美在线一区| 国产视频网站一区二区三区| 国产精品xxx在线观看| 日韩免费福利视频| 麻豆精品91| 日本欧美大码aⅴ在线播放| 国产精品一区二区精品| 精品色999| 亚洲成人日韩| 日本a口亚洲| 久久电影一区| 日韩av首页| 日韩欧美久久| 精品美女久久| 久久精品国产成人一区二区三区| 涩涩av在线| 亚洲精品一级| 狠狠久久伊人| 午夜欧美精品| 欧美日韩a区| www.com.cn成人| 日韩国产欧美在线播放| 久久久噜噜噜| 国产调教精品| 午夜欧美精品久久久久久久| 国产日韩欧美一区| 欧美手机在线| 亚洲乱码久久| 香蕉视频亚洲一级| 国产成人精品三级高清久久91| 88久久精品| 国产日产精品_国产精品毛片 | 亚洲欧美日韩高清在线| 精品三级av在线导航| 日韩中文字幕91| 日韩一区二区三区免费播放| 国产欧美日韩一级| 日韩在线a电影| 欧美好骚综合网| 精品午夜视频| 国产欧美日韩精品高清二区综合区 | 国产精品毛片一区二区三区| 日韩视频一二区| 日本视频中文字幕一区二区三区| 国产精品香蕉| 欧美日韩国产免费观看视频| 欧美精品成人| 在线天堂资源www在线污| 国产精久久久| 日本亚洲不卡| 亚洲精品乱码久久久久久蜜桃麻豆 | 精品国产中文字幕第一页| 亚洲成a人片| 欧美激情99| 国产精品观看| 91嫩草精品| 偷拍亚洲精品| 亚洲欧美在线综合| 日韩中文字幕91| 国产精品日韩| 免费国产自久久久久三四区久久 | 日韩欧美精品一区| 夜鲁夜鲁夜鲁视频在线播放| 国产亚洲高清一区| 精品亚洲免a| 欧美日韩视频免费观看| 色爱av综合网| 激情自拍一区| 久久亚洲在线| 久久久久国产精品一区二区| 国产va免费精品观看精品视频| 日韩av黄色在线| 青草综合视频| 日本久久精品| 日韩精品久久久久久久电影99爱| 91亚洲自偷观看高清| 日韩在线视频精品| 欧洲激情综合| 尤物网精品视频| 日韩精品免费一区二区夜夜嗨| 国产精品igao视频网网址不卡日韩| 精品欠久久久中文字幕加勒比| 久久精品123| 日韩国产欧美在线播放| 天堂中文av在线资源库| 免费成人性网站| 国产精品二区不卡| 久久国产精品亚洲77777| 久久不见久久见国语| 好看的av在线不卡观看| 久久av导航| 国产精品2区| 神马午夜在线视频| a天堂资源在线| 亚洲成人精品| 四虎精品永久免费| 国产极品模特精品一二| 精品久久在线| 99pao成人国产永久免费视频| 99精品综合| 亚洲色图网站| 精品久久久久久久| 自拍日韩欧美| 青青草精品视频| 黄色在线观看www| 亚洲一区激情| 精品国产亚洲一区二区三区在线| 韩国精品主播一区二区在线观看 | 国产图片一区| 亚洲成人国产| 国产精品一级在线观看| 成人羞羞在线观看网站| 亚洲精品伊人| 国产传媒av在线| 日韩激情av在线| 精品中文一区| 精品国产18久久久久久二百| 日韩不卡一区| 亚洲视频国产精品| 正在播放日韩精品| 日本成人手机在线| 欧美日韩精品一区二区视频| 欧美一区激情| 模特精品在线| 日韩国产一区| 精品国产午夜| 国产日韩欧美一区在线| 欧美日韩三区| 电影亚洲精品噜噜在线观看| 欧美国产先锋| 国产精品成人国产| 亚洲图片久久| 欧美91福利在线观看| 精品三级国产| 久久精品一区二区国产| 日本欧美韩国一区三区| 久久xxxx| 免费看欧美美女黄的网站|