簡單了解Java方法的定義和使用實現(xiàn)詳解
這篇文章主要介紹了簡單了解Java方法的定義和使用實現(xiàn)詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
1.概念
Java語言中的“方法”(Method)在其他語言當中也可能被稱為“函數(shù)”(Function)。對于一些復雜的代碼邏輯,如果希望重復使用這些代碼,并且做到“隨時任意使用”,那么就可以將這些代碼放在一個大括號“{}”當中,并且起一個名字。使用代碼的時候,直接找到名字調用即可
2.實戰(zhàn)演練
2.1 測試傳入?yún)?shù)與返回值方法
代碼
MethodDemo.java
package cn.test.logan.day04; import java.util.ArrayList; public class MethodDemo { public int num1; public int num2; // 方法:用來封裝一段邏輯 // 定義方法的語法:public 返回值類型 方法名() { //邏輯 } public int getSum() { int sum = num1 + num2; return sum; } // 沒有返回值的方法,使用void表示 public void say() { System.out.println("此時是沒有返回值的方法,哈哈"); } // 帶參數(shù)但沒有返回值的方法 ,同名方法,但是參數(shù)列表不一樣,叫方法的重載 public void say(String param) { System.out.println("我的輸入?yún)?shù)是:"+param); } // 帶多個參數(shù)并且沒有返回值的方法 public void say(String param1,String param2) { System.out.println("輸入的第一個參數(shù)是:"+param1); System.out.println("輸入的第二一個參數(shù)是:"+param2); } // 帶參數(shù)并且有返回值的方法 public int getDiff(int a,int b) { int diff = a - b; return diff; } // 用來對ArrayList排序 public static void sortForArrayList(ArrayList<Integer> list) { for(int i=0;i<list.size()-1;i++) { for(int j=0;j<list.size()-1-i;j++) { if(list.get(j) > list.get(j+1)) { int tmp = list.get(j); list.set(j, list.get(j+1)); list.set(j+1, tmp); } } } } // 打印ArrayList public void print(ArrayList<Integer> list) { for(int i=0;i<list.size();i++) { System.out.println(list.get(i)); } } }
MethodTest.java
package cn.test.logan.day04; import java.util.ArrayList; public class MethodTest { public static void main(String[] args) { MethodDemo md = new MethodDemo(); md.num1 = 12; md.num2 = 13; int sum = md.getSum(); System.out.println("兩個數(shù)字的和為:"+sum); System.out.println("----------------------------"); // 調用沒有返回值的方法 md.say(); System.out.println("----------------------------"); // 調用帶參數(shù), 沒有返回值的方法 md.say("參數(shù)1"); System.out.println("----------------------------"); // 調用帶多個參數(shù), 沒有返回值的方法 md.say("參數(shù)A","參數(shù)B"); System.out.println("----------------------------"); // 調用帶參數(shù),有返回值的方法 int diff = md.getDiff(20, 10); System.out.println(diff); System.out.println("----------------------------"); // 定義一個ArrayList,并按從小到達順序排序后打印 ArrayList<Integer> al = new ArrayList<>(); al.add(20); al.add(10); al.add(40); al.add(15); md.sortForArrayList(al); md.print(al); } }
2.2 測試成員方法和靜態(tài)方法
成員方法,又稱為對象的方法,和對象存在關系,需要使用對象調用。
靜態(tài)方法,又稱為類的方法,和對象不存在關系,可以直接使用類調用。
代碼
MethodDemo2.java
public class MethodDemo2 { public String name; // 定義一個類的方法(靜態(tài)方法) /** * 這樣的方法,跟具體對象沒關系 * 這樣的方法,就可以了定義為類方法-->類的方法 * 靜態(tài)方法可以直接使用類調用 */ public static void print() { System.out.println("hello"); } // 定義一個(對象的方法)成員方法 public void showName() { System.out.println("hello,"+this.name); } }
MethodTest2.java
package cn.test.logan.day04; public class MethodTest2 { public static void main(String[] args) { // 靜態(tài)方法調用 MethodDemo2.print(); // 成員方法調用 System.out.println("---------------------------"); MethodDemo2 m2 = new MethodDemo2(); m2.name="Jack"; m2.showName(); } }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
基于spring-mvc.xml和application-context.xml的配置與深入理解
這篇文章主要介紹了spring-mvc.xml和application-context.xml的配置與深入解析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08淺析Spring配置中的classpath:與classpath*:的區(qū)別
這篇文章主要介紹了Spring配置中的"classpath:"與"classpath*:"的區(qū)別,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08解決SpringBoot中MultipartResolver和ServletFileUpload的沖突問題
這篇文章主要介紹了解決SpringBoot中MultipartResolver和ServletFileUpload的沖突問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10Spring BPP中如何優(yōu)雅的創(chuàng)建動態(tài)代理Bean詳解
這篇文章主要給大家介紹了關于Spring BPP中如何優(yōu)雅的創(chuàng)建動態(tài)代理Bean的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-03-03如何為Spring Cloud Gateway加上全局過濾器
這篇文章主要介紹了如何為Spring Cloud Gateway加上全局過濾器,幫助大家更好得理解和學習使用Gateway,感興趣的朋友可以了解下2021-03-03java使用MulticastSocket實現(xiàn)多點廣播
這篇文章主要為大家詳細介紹了java使用MulticastSocket實現(xiàn)多點廣播,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-01-01