日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Java教程Java語言中的static修飾符

本文是Java教程之Java語言中的static修飾符部分。

創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于做網(wǎng)站、成都網(wǎng)站建設(shè)、南寧網(wǎng)絡(luò)推廣、重慶小程序開發(fā)、南寧網(wǎng)絡(luò)營銷、南寧企業(yè)策劃、南寧品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供南寧建站搭建服務(wù),24小時服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com

在Java類中,我們常常會看到static關(guān)鍵字,往往被稱為靜態(tài)的。Static修飾符可以用來修飾數(shù)據(jù)成員,方法成員,但是不能修飾類(此處指外部類),不能修飾構(gòu)造方法。如:

 
 
 
  1. package com.csst.vo;  
  2.  
  3.  public class User {  
  4.  
  5.        private String name;  
  6.  
  7.        private static int count;  
  8.  
  9.        public String getName() {  
  10.  
  11.               return name;  
  12.  
  13.        }  
  14.  
  15.        public void setName(String name) {  
  16.  
  17.               this.name = name;  
  18.  
  19.        }        
  20.  
  21.        public static int getCount() {  
  22.  
  23.               return count;  
  24.  
  25.        }  
  26.  
  27.        public static void main(String[] args){  
  28.  
  29.               User user1=new User();  
  30.  
  31.               User user2=new User();  
  32.  
  33.               user1.setName("Rose");  
  34.  
  35.               user2.setName("Kate");  
  36.  
  37.               user1.count=10;  
  38.  
  39.               user2.count=20;  
  40.  
  41.               System.out.println("user1.name:"+user1.getName()+" user2.name:"+user2.getName());  
  42.  
  43.               System.out.println("user1.count:"+User.getCount()+"user2.count:"+user2.count);  
  44.  
  45.        }  

該程序運行結(jié)果為:

 
 
 
  1. user1.name:Rose user2.name:Kate  
  2.  
  3. user1.count:20 user2.count:20 

我們可以發(fā)現(xiàn),user1和user2的name屬性是不同的,分別為該對象調(diào)用setName所指定的,而雖然user1和user2分別對count屬性指定了不同的值,但是最終輸出的count值卻均為20。原因就是count被static修飾,而name沒有使用count修飾。
被static修飾符修飾的數(shù)據(jù)成員或方法成員被稱為靜態(tài)成員,或者類成員,沒有被static修飾的,被稱為實例成員。static成員只被初始化一次,所有的對象共享,因此count會輸出兩個20。實例成員只有當(dāng)初始化對象的時候才初始化,每次創(chuàng)建對象,都會被初始化一次。name在user1和user2被創(chuàng)建時,初始化了2次,因此最終輸出的是Rose和Kate。
另外,static成員,由于是類共享的,所以不僅可以使用對象調(diào)用,也可以使用類名調(diào)用。在static方法中,不能夠直接使用非靜態(tài)的成員,如果使用,必須初始化對象,調(diào)用。如過在上面示例的User.java中有如下代碼,會發(fā)生編譯錯誤。

 
 
 
  1. public static void test(){  
  2.  
  3.        setName("test");  
  4.  

可以修改如下:

 
 
 
  1. public static void test(){  
  2.  
  3.               User user=new User();  
  4.  
  5.               user.setName("test");  
  6.  

千萬不要盲目的把成員聲明為static,一定要理解static成員的特點,否則會造成雖然語法正確,但是邏輯錯誤的后果。


網(wǎng)站欄目:Java教程Java語言中的static修飾符
本文地址:http://www.dlmjj.cn/article/dpdieio.html