static关键字和内存使用
1 static靜態(tài)的,用來修飾屬性,方法,代碼塊,內(nèi)部類
2 當(dāng)其中一個(gè)變量對此屬性進(jìn)行修改,會(huì)導(dǎo)致其他對象對此屬性的一個(gè)調(diào)用
vs 實(shí)例變量:對象各有一套副本
3 靜態(tài)變量和方法隨著類的加載而加載,可以直接用類調(diào)用或?qū)ο笳{(diào)用,因?yàn)轭惣虞d早于對象。
4. static方法(類方法)中不能調(diào)用非靜態(tài)的屬性或方法。而非靜態(tài)的方法可以調(diào)用靜態(tài)的屬性或方法。由于靜態(tài)的結(jié)構(gòu)生命周期早于非靜態(tài)的結(jié)構(gòu),死亡還晚。所以在靜態(tài)方法中調(diào)用時(shí)對象還沒創(chuàng)建,自然不能調(diào)用非靜態(tài)結(jié)構(gòu)。反之亦然。靜態(tài)方法中不能有this或super。
5 static的應(yīng)用:使用靜態(tài)變量可以實(shí)現(xiàn)“累加”的效果,因?yàn)殪o態(tài)變量在內(nèi)存中獨(dú)一份。
package lianxi3;public class TestStatic {public static void main(String[] args) {Account user1 = new Account("123", 3000);Account user2 = new Account("456", 5000);Account user3 = new Account("789", 8000);System.out.println(user1.toString());System.out.println(user2);System.out.println(user3);}}class Account {private int id;private String password;private static int rate;private double balance;private static double minbalance;private static int init = 1200; // 初始化賬號public Account(String password, double balance) { // 注意:不用再寫int id,已經(jīng)設(shè)置初值了this.id = init++;this.password = password;this.balance = balance;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public static int getRate() {return rate;}public static void setRate(int rate) {Account.rate = rate;}public double getBalance() {return balance;}public void setBalance(double balance) {this.balance = balance;}public static double getMinbalance() {return minbalance;}public static void setMinbalance(double minbalance) {Account.minbalance = minbalance;}public static int getInit() {return init;}public static void setInit(int init) {Account.init = init;}public int getId() {return id;}@Overridepublic String toString() {return "Account [balance=" + balance + ", id=" + id + ", password="+ password + "]";}}
結(jié)果:
Account [balance=3000.0, id=1200, password=123]
Account [balance=5000.0, id=1201, password=456]
Account [balance=8000.0, id=1202, password=789]
轉(zhuǎn)載于:https://www.cnblogs.com/yjtm53/p/4135310.html
總結(jié)
以上是生活随笔為你收集整理的static关键字和内存使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我的世界高射炮怎么做?
- 下一篇: 美工课程求推荐!!!!!?