/* 成員變量和局部變量的區別? A:在類中的位置不一樣 成員變量:在類中方法外 局部變量:在方法定義中或者方法聲明上 B:在內存中的位置不一樣 成員變量:在堆內存 局部變量:在棧內存 C:生命週期不一樣 成員變量:隨着對象的建立而存在,隨着對象的消失而消失 局部變量:隨着方法的調用而存在,隨着方法的調用完畢而消失 D:初始化值不一樣 成員變量:有默認初始化值 局部變量:沒有默認初始化值,必須定義,賦值,而後才能使用。 注意事項: 局部變量名稱能夠和成員變量名稱同樣,在方法中使用的時候,採用的是就近原則。 */ /* 匿名對象:就是沒有名字的對象。 匿名對象的應用場景: A:調用方法,僅僅只調用一次的時候。 注意:調用屢次的時候,不適合。 那麼,這種匿名調用有什麼好處嗎? 有,匿名對象調用完畢就是垃圾。能夠被垃圾回收器回收。 B:匿名對象能夠做爲實際參數傳遞 */ private:私有的。能夠修飾成員變量和成員方法。 注意:被private修飾的成員只能在本類中訪問。 this:是當前類的對象引用。簡單的記,它就表明當前類的一個對象。 注意:誰調用這個方法,在該方法內部的this就表明誰。 this的場景: 解決局部變量隱藏成員變量
/* 咱們一直在使用構造方法,可是,咱們確沒有定義構造方法,用的是哪裏來的呢? 構造方法的注意事項: A:若是咱們沒有給出構造方法,系統將自動提供一個無參構造方法。 B:若是咱們給出了構造方法,系統將再也不提供默認的無參構造方法。 注意:這個時候,若是咱們還想使用無參構造方法,就必須本身給出。建議永遠本身給出無參構造方法 給成員變量賦值有兩種方式: A:setXxx() B:構造方法 */
/* static關鍵字注意事項 A:在靜態方法中是沒有this關鍵字的 如何理解呢? 靜態是隨着類的加載而加載,this是隨着對象的建立而存在。 靜態比對象先存在。 B:靜態方法只能訪問靜態的成員變量和靜態的成員方法 靜態方法: 成員變量:只能訪問靜態變量 成員方法:只能訪問靜態成員方法 非靜態方法: 成員變量:能夠是靜態的,也能夠是非靜態的 成員方法:但是是靜態的成員方法,也能夠是非靜態的成員方法。 簡單記: 靜態只能訪問靜態。 */
/* main方法的格式講解: public static void main(String[] args) {...} public:公共的,訪問權限是最大的。因爲main方法是被jvm調用,因此權限要夠大。 static:靜態的,不須要建立對象,經過類名就能夠。方便jvm的調用。 void:由於咱們曾經說過,方法的返回值是返回給調用者,而main方法是被jvm調用。你返回內容給jvm沒有意義。 main:是一個常見的方法入口。我見過的語言都是以main做爲入口。 String[] args:這是一個字符串數組。值去哪裏了? 這個東西到底有什麼用啊?怎麼給值啊? 這個東西早期是爲了接收鍵盤錄入的數據的。 格式是: java MainDemo hello world java */