1. 程式人生 > 實用技巧 >清晰的CSS 3媒體查詢響應式佈局,bootstrap 框架原理實戰

清晰的CSS 3媒體查詢響應式佈局,bootstrap 框架原理實戰

1.方法的定義

方法:認為在程式中要去實現的某一個功能,需要包含多條語句,這些語句包含迴圈語句結構,選擇語句結構等共同來處理一件事情。

2.定義方法的格式詳解

public static void main(String[] args){
    //方法體內容
}
    void 空的,無效的,
    String[] args 引數-->變數

方法定義的完整格式:修飾符 返回值型別 方法名稱(引數型別1 引數名稱1, 引數型別2 引數名稱2,。。。){ }

。。。

修飾符:public static

返回值型別:方法最終產生的資料結果是什麼樣的

方法名稱:方法的名字,名字自定義 - - 識別符號,採用小駝峰

引數型別:進入方法當中的資料是一個什麼樣的型別

引數名稱:進入方法當中的資料對應的變數名稱

方法體:方法需要執行的功能,由若干行程式碼組成的。

return:一般認為有兩個作用,第一將後面的返回值返回給程式;第二停止當前正在執行的方法。

返回值:就是方法執行最終產生的資料結果。

備註:1,return 後面的 "返回值" ,必須和方法宣告上的 "返回值型別" 保持一致

​ 2,方法不允許巢狀,不允許定義在類的外面

​ 3,方法只能並列,並且只能必須定義在類的裡面。

3.方法呼叫【重點】

​ ####三種呼叫格式:

  1. 單獨呼叫:方法名稱(此時具體值);

​2. 列印呼叫:System.out.println(方法名稱(引數具體值));

​3. 賦值呼叫:資料型別 變數名稱 = 方法名稱(引數具體值);

備註:

當返回值型別為void 的時候,這種方法只能單獨呼叫,不能進行列印呼叫或者賦值呼叫。

返回值型別一般可以理解為資料型別(基本資料型別和引用資料型別),此外還包含一致型別 void 型別

當方法執行完畢不需要給程式呼叫者返回任何的資料結果時,可以指定該方法的返回值型別為void,此時只能【單獨呼叫】。

注意事項:

​ 1.方法呼叫的先後順序無所謂

​ 2.方法定義不能巢狀,不能在一個方法的內部定義另一個方法

​ 3.方法定義之後,自己不會執行;如果希望執行,一定要進行方法的呼叫

4.方法過載

​ 對於功能類似的方法來說,因為引數列表不一致,卻需要呼叫不同的方法名稱,對於開發者來說,記憶那麼多的功能類似的不同方法名,非常麻煩。

		public class MethodDemo03 {
            
            public static void main(String[] args) {   
               // 計算一個整數和一個小數的和,整數為第一個引數,小數為第二個引數
               //int number = sum(10,3.14);
               //  計算一個整數和一個小數的和,小數為第一個引數,整數為第二個引數
              // int number02 = sum(3.14,10); 
                
            }
            // 計算兩個數的和,得到一個整數
            // 計算兩個整數的和
            public static int sum(int a,int b) {
              
                return (a+b);
            }
            // 計算兩個小數的和
            public static int sum(double a,double b) {
                
                return (int)(a+b);
            }
            // 計算一個整數和一個小數的和
            public static int sum(int a,double b) {
                
                return (int)(a+b);
            } 
            // 計算一個整數和一個小數的和
            public static int sum(double a,int b) {
                
                return (int)(a+b);
            }
            
            public static double sum(double d1,int integer) {
                
                return (d1+integer);
            }
            
        }
【如果在類中定義方法時,方法的引數列表不一致,雖然方法名稱一樣,但是程式會認為這是一個新方法。】

方法過載(Overload):在一個類中多個方法名稱一樣,但是引數列表不一樣

好處:只需要記住唯一 一個方法名稱即可,就可以實現來說的多個功能。

方法過載與哪些因素有關:

​ 1.引數個數不同

​ 2.引數型別不同

​ 3.引數的多型別順序不同

方法過載與哪些因素無關:

​ 1.與引數名稱無關

​ 2.與方法的返回值無關

​ 3.與方法的修飾符無關

// 判斷以下哪些方法是過載關係
public static void add(){}
public static void add(int a){}
static void add(int a,int b){}
public static void add(double a,int b){}
public static void add(int a,double b){}
public void add(int i,double d){}//X
public static void ADD() {}//X
public static void add(int i,int j){}//X

陣列作為方法引數和返回值

#####陣列作為方法引數

​ 陣列作為引用型別能否當成方法的引數進行傳遞呢?當然可以

​ 陣列作為方法引數傳遞,傳遞的是引數的陣列記憶體的地址。

  public static void main(String[] args){
      int[] arr = {1,2,3,4,5};
      //呼叫方法,傳遞陣列
      println(arr);
  }
/*
建立方法,方法接收陣列型別的引數
進行陣列的遍歷
*/
public static void println(int[] arr){
    //陣列遍歷
    for(int i = 0;i<=arr.length-1;i++){
        System.out.println(arr[i])
    }![](https://img2020.cnblogs.com/blog/2195823/202011/2195823-20201114092218962-1690385108.png)


}

jvm掃描類檔案,把方法儲存在方法區,然後會優先載入main方法,執行main方法的語句,

int [ ] arr={1,2,3,4,5};

在堆記憶體中new了一個{1,2.3,4,5}的陣列資料包,並把這個資料的地址賦值給了=左邊的int[]  arr,

println(arr);

main方法根據語句找到了println並根據語句內容把id為 arr 的資料包的地址作為引數傳送往方法區中的println方法,根據棧的特性main方法被壓棧到底部,現在執行println方法在棧的出入口,逐行執行println方法的語句,

println方法在(在呼叫方法時,輸入的引數型別必須和方法引數列表的引數型別一致)引數列表使用int[]arr接收了mian使用方法時傳入的引數獲得了arr陣列的地址,println方法執行了遍歷for命令之後完畢從棧的出入口被彈出,根據彈棧特性println方法會被釋放,main方法從棧底彈棧向上一格,開始繼續執行main方法

繼續執行main方法如此解讀執行,程式執行結束。

5.陣列作為方法的返回值

​ 陣列作為方法的返回值,返回的是陣列的記憶體地址。

  public static void main(String[] args){
      //呼叫方法,接收陣列的返回值
      //接收到的是陣列的記憶體地址
      int[] arr = getArray();
      System.out.println(arr);//此時是一個記憶體地址雜湊值
  }
/*
建立方法,返回值是陣列型別
return 返回陣列的記憶體地址
*/
  public static int[] getArray(){
      int[] arr = {1,3,5,9,11}
      //此時返回陣列的記憶體地址,返回給呼叫者
      return arr;
  }

一個方法可以有 1 ,0,多個引數;但是隻能用 0 個或者一個返回值,不能有多個返回值。

如果我們希望一個方法當中產生了多個結果資料,這些多個結果資料提示需要返回

解決方案:使用一個容器(陣列)作為方法的返回值型別即可。

  public static void main(String[] args){
      int a = 10;
      int b = 20;
      change(a,b);
      System.out.println(a);//a=10
      System.out.println(b); //b=20
  }
public static void change(int a,int b){
    a=a+b;//a=30
    b=b+a;//b=50
    
}
  public static void main(String[] args){
      int[] arr = new int[]{10,20};
      changeArray(arr);
      System.out.println(arr[0]);//arr[0]=10 or 30? ---->30
      System.out.println(arr[1]); //arr[1]=20 or 50?---->50
  }
public static void changeArray(int[] arr){
    arr[0] = 30;
    arr[1] = 50;
}