1.創建對象(實例)
new關鍵字 既然類是對象的模板,new 類名();就是創建一個對象的意思。New一次就創建一個對象,創建對象換個話說就是創建一遍內存。new幾次就創建幾個對象。 例如: //這是一個學生類 public class Student { String name; String address; int age; String sex; void dushu() { System.out.println("正在讀書..."); } void lianxi() { System.out.println("正在練習..."); } } //下面我們new這個學生類的對象,并把這個對象交給變量stu,在把這個對象里的變量附上參數。然后調用這個對象的方法。 public class Test { public static void main(String[] args) { Student stu=new Student(); stu.sex="男"; stu.name="張三"; stu.address="湖南"; stu.age=12; stu.dushu(); stu.lianxi(); } }
1.實例成員
實例成員就是new出的對象里的所以變量和方法就稱之為對象成員或者叫實例成員。
2.靜態成員
靜態成員就是類模板中加上static的屬性和方法。 靜態成員只有一份內存,哪怕new出對象后,對象也只是引用類中靜態成員的這一遍內存,對象并沒有自己創建登記內存自己去存儲而是引用。 所以有static關鍵字的屬性和方法的類的靜態成員對象實例都不會去登記內存而僅僅是引用回類的靜態成員的內存。 只有不帶static的實例成員對象才會去登記內存自己存儲起來。 所以靜態成員不用new對象就可以直接通過類名去訪問了。因為這個類加載起來后就已經有了一份靜態成員了。 例如:
靜態成員不用new對象就可以直接訪問。
既然靜態成員是所有實例共用一份。而實例成員是【學Java,到凱哥學堂kaige123.com】各自有各自的一份。那也就存在著引用傳遞的關系了。
1.靜態成員只要一個實例對其進行修改那全部實例都會發生改變 。 2.實例成員那就是自己修改自己的那一份對其他實例沒有影響的。 如圖: