1. 程式人生 > >Java -暫時不好解釋的現象

Java -暫時不好解釋的現象

一 Java 給方法傳入不同的引數型別(引數本身抑或是引數的成員變數)會不會改變本身的引數的值?

public class Main {
 
	private static void getMiddleOne(boolean b, Boolean boo, Boolean[] arr){
		b = true;  //形參,不會改變原有值
		boo = new Boolean(true);  //引用變數的直接操作相當於值傳遞,不會改變原來的引用變數
		arr[0] = true;  //引用變數的屬性的操作,會改變原有引用的屬性,相當於傳址呼叫
	}
	
	//測試
	public static void main(String[] args) {
		boolean b = false;
		Boolean boo = new Boolean(false);
		Boolean[] arr = new Boolean[]{false};
 
		getMiddleOne(b, boo, arr);
		
		System.out.println(b);  
		System.out.println(boo.toString());
		System.out.println(arr[0]);
 
		/**
		 * output:
		 * 		false
		 * 		false
		 *		true
		 */
	}
}

二 抽象方法不能被static修飾

三 一個Java檔案中只能有一個public修飾的類
https://blog.csdn.net/qq_17616169/article/details/72920346