一般情況下,我們認爲Java中了除了八種基本數據類型,其他都是對象,進行引用傳遞;
但是:String、包裝類、枚舉類作爲參數傳遞後發現,沒有達到引用傳遞的效果,很多人認爲它是值傳遞!
首先,對象肯定是引用傳遞,爲何這三類沒有達到引用傳遞的效果呢?
以包裝類Boolean爲例:
會發現:
1、Boolean的值都是static、final的,說白了就是不能修改的
2、沒有修改值得setter方法
因此,從表象看:枚舉值都是值傳遞(傳遞副本),根本原因是被限制修改....
一般情況下,我們認爲Java中了除了八種基本數據類型,其他都是對象,進行引用傳遞;
但是:String、包裝類、枚舉類作爲參數傳遞後發現,沒有達到引用傳遞的效果,很多人認爲它是值傳遞!
首先,對象肯定是引用傳遞,爲何這三類沒有達到引用傳遞的效果呢?
以包裝類Boolean爲例:
會發現:
1、Boolean的值都是static、final的,說白了就是不能修改的
2、沒有修改值得setter方法
因此,從表象看:枚舉值都是值傳遞(傳遞副本),根本原因是被限制修改....
shell腳本獲取腳本所在目錄 執行腳本的父目錄不一定是當前的工作目錄。 url=$(dirname $(readlink -f $0))