一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java變量的區別淺析

java變量的區別淺析

2019-10-24 16:46java教程網 JAVA教程

對于java的變量天天見到,但有時候別人問起它們的區別有時候也說不全,所以就找了些資料整理了整理...

變量也叫靜態變量,也就是在變量前加了static 的變量;
實例變量也叫對象變量,即沒加static 的變量;
兩者區別在于:
類變量(靜態變量)是所有對象共有,其中一個對象將它值改變,其他對象得到的就是改變后的結果,并且類變量是可以直接通過類名來調用的 如:A.xingS;
而實例變量則屬對象私有,某一個對象將其值改變,不影響其他對象,實例變量顧名思義是屬于實例的,所以只能通過實例來調用 如:A a=new A(); a.name;
舉個不太恰當的例子:類變量就好比一個人的姓氏,實例變量就相當于人的名字,如果它父親把姓改了,那它所有的兄弟姐妹姓都得改,但是它們的名字還是各用各的。
例:

復制代碼代碼如下:


public class A{  
static  int xingS = 0; //類變量   
private int name = 0; //實例變量   
String id; //實例變量  
private String colorType; //實例變量   
private int size; //實例變量   
private static String depart; //類變量   f
inal String name="zwm"; //常量

public class B{   
public void main (String[] args){       
A son1= new A();       
A son2= new A();       
son1.xingS = 3;  // 等同于 
A.xingS = 3;       
son1.name = 4 ;       
System.out.println(son2.xingS); //結果為3       
//類變量是針對所有對象的,所以son1改變xingS,son2的a也改變       
System.out.println(son2.name); //結果為0       
//實例只改變自身的,所以son1對象的name改變,不影響對象son2的name變量  
}
}


類變量又叫靜態成員變量,它不需要創建對象就可以已經在內存中存在了,而在創建實例對象的時候,
內存中會為每一個實例對象的每一個非靜態成員變量開辟一段內存空間,用來存儲這個對象所有的非靜態成員變量值。
即使兩個不同的實例對象是屬于同一個class類,但是它們的同名非靜態成員變量在內存中占用的空間是不同的,
而靜態成員變量也就是類變量相同。所有的實例對象都共用一個類變量,內存中只有一處空間是放這個類變量值的。
因此,如果一個對象把類變量值改了,另外一個對象再取類變量值就是改過之后的了。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国内精品久久久久影院中国 | 日韩在线资源 | 逼123| 天天舔天天操天天干 | 亚洲国产日韩欧美在线vip1区 | 国产精品国产香蕉在线观看网 | 亚洲精品网址 | 国产v在线在线观看羞羞答答 | 午夜AV亚洲一码二中文字幕青青 | 国产精品久久毛片完整版 | 猛h辣h高h文湿重口 门房秦大爷在线阅读 | 亚洲日韩欧美一区二区在线 | 午夜性爽视频男人的天堂在线 | 久久亚洲一级α片 | 嗯好爽视频| 草莓视频在线观看免费 | 欧美贵妇videos办公室360 | 婚色阿花在线全文免费笔 | 99视频在线观看视频一区 | 男人天堂网在线 | 日本b站一卡二不卡三卡四卡 | 不卡一区二区三区 | tolove第一季动画在线看 | 免费观看大片毛片 | 美女张开大腿让男人桶 | 亚洲国产在线观看免费视频 | 国产情侣啪啪 | 国产经典一区 | 四虎精品影视 | 美女撒尿无遮挡免费中国 | 精品国产乱码久久久久久人妻 | 蜜桃影像传媒破解版 | 亚洲高清毛片一区二区 | 极品丝袜小说全集 | 日韩二区三区 | www.青青操 | 小SAO货边洗澡边CAO你动漫 | 99久久免费国产特黄 | 脱jk裙的美女露小内内无遮挡 | 超级乱淫变态伦短篇小说全集 | 欧美日韩在线一区二区三区 |