例题4-5 引发的static知识点
?
?
static是靜態修飾符,什么叫靜態修飾符呢?大家都知道,在程序中任何變量或者代碼都是在編譯時由系統自動分配內存來存儲的,而所謂靜態就是指在編譯后所分配的內存會一直存在,直到程序退出內存才會釋放這個空間,也就是只要程序在運行,那么這塊內存就會一直存在。這樣做有什么意義呢?
在Java程序里面,所有的東西都是對象,而對象的抽象就是類,對于一個類而言,如果要使用他的成員,那么普通情況下必須先實例化對象后,通過對象的引用才能夠訪問這些成員,但是有種情況例外,就是該成員是用static聲明的(在這里所講排除了類的訪問控制)
例如
未聲明為static
class ClassA{
int b;
public void ex1(){
…
}
}
class ClassB{
void ex2{
int i;
ClassA a = new ClassA();
i = a.b; //這里通過對象引用訪問成員變量b
a.ex1; //這里通過對象引用訪問成員函數ex1
}
}
聲明為static
class ClassA{
static int b;
static void ex1(){
…
}
}
class ClassB{
void ex2{
int i;
i = ClassA.b; //這里通過類名訪問成員變量b
ClassA.ex1; //這里通過類名訪問成員函數ex1
}
}
通過以上兩種比較,就可以知道static用來修飾類成員的主要作用了,在java類庫當中有很多類成員都聲明為static,可以讓用戶不需要實例化對象就可以引用成員,最基本的有Integer.parseInt(),Float.parseFloat()等等用來把對象轉換為所需要的基本數據類型。
轉載于:https://www.cnblogs.com/zhangqiang618/archive/2013/03/21/2974088.html
總結
以上是生活随笔為你收集整理的例题4-5 引发的static知识点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php中bcsub怎么使用
- 下一篇: word文档中的文字如何直接变成繁体字