摘要:之所以不行是應(yīng)為,變量方法何值還不確定,在沒有實(shí)例的內(nèi)存中運(yùn)行的時(shí)候會(huì)報(bào)錯(cuò)但是非靜態(tài)方法或者函數(shù)是可以調(diào)用靜態(tài)方法和靜態(tài)變量的,因?yàn)橹祷蚪Y(jié)果已經(jīng)固定。
1.main
main方法 java 類的主方法,相當(dāng)于php類文件的index方法。默認(rèn)執(zhí)行。 java的main方法 必須聲明為 public static void main(String [] args) 其中static是靜態(tài)標(biāo)志 static的作用:在類中,被static修飾符修飾的變量稱為靜態(tài)變量(也叫類變量),而static修 飾的方法則是靜態(tài)方法,static方法屬于類而不是屬于某個(gè)對(duì)象,所以static方法是可以直接 通過類名調(diào)用的不必先創(chuàng)建出實(shí)例的。 那么這里的main也一樣,static的main方法可以直接被jvm調(diào)用,不用先new出實(shí)例再執(zhí)行。 這樣,我們?cè)诰幾g這段java代碼時(shí),解釋器就是在當(dāng)前的 類當(dāng)中去調(diào)用靜態(tài)的main方 法,而不需要產(chǎn)生 這個(gè)類的對(duì)象,我們加載類時(shí),main方法也被加載作為java程序的入口。
2.調(diào)用
靜態(tài)方法不能調(diào)用非靜態(tài)的方法或者參數(shù) 原因:這個(gè)是因?yàn)樵陬惐患虞d時(shí),類的靜態(tài)部分(靜態(tài)變量、靜態(tài)方法和靜態(tài)塊)首先就 分配了內(nèi)存空間并完成初始化操作,當(dāng)非靜態(tài)方法調(diào)用他們的時(shí)候,他們已經(jīng)有了內(nèi)存 空間,這里反過來就不可以了。 之所以不行是應(yīng)為,變量方法何值還不確定,在沒有實(shí)例的內(nèi)存中運(yùn)行的時(shí)候會(huì)報(bào)錯(cuò) 但是非靜態(tài)方法或者函數(shù)是可以調(diào)用靜態(tài)方法和靜態(tài)變量的,因?yàn)橹祷蚪Y(jié)果已經(jīng)固定。制定值空間的時(shí)候也是哦唯一的
3.super()
super出現(xiàn)在繼承了父類的子類中。有三種存在方式: 第一種 super.xxx;(xxx為變量名或?qū)ο竺? 這種方法意義為,獲取父類中的名字為xxx的變量或方法引用。 使用這種方法可以直接訪問父類中的變量或?qū)ο?,進(jìn)行修改賦值等操作 第二種 super.xxx();(xxx為方法名) 這種方法意義為,直接訪問并調(diào)用父類中的方法。 第三種 super(); 這種方法意義為,調(diào)用父類的初始化方法,其實(shí)就是調(diào)用父類中的public xxx()方法
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/67321.html
摘要:和是配套使用的,方法容易導(dǎo)致死鎖。方法不會(huì)保證線程的資源正常釋放方法給線程打個(gè)停止標(biāo)記,將線程的中斷狀態(tài)設(shè)置為,并沒有馬上強(qiáng)制中斷線程,線程是否中斷由線程自己決定。終結(jié)狀態(tài),還是返回。方法判斷當(dāng)前線程是否中斷,清除中斷標(biāo)志。 resume、suspend、stop resume和suspend是配套使用的,suspend方法容易導(dǎo)致死鎖。 stop方法不會(huì)保證線程的資源正常釋放 i...
摘要:與執(zhí)行方法,是用來啟動(dòng)線程的,此時(shí)線程處于就緒狀態(tài),獲得調(diào)度后運(yùn)行方法。執(zhí)行方法,相對(duì)于普通方法調(diào)用,在主線程調(diào)用。程序是順序執(zhí)行的,執(zhí)行完才會(huì)執(zhí)行下面的程序。 start與run 執(zhí)行start方法,是用來啟動(dòng)線程的,此時(shí)線程處于就緒狀態(tài),獲得調(diào)度后運(yùn)行run方法。run方法執(zhí)行結(jié)束,線程就結(jié)束。 執(zhí)行run方法,相對(duì)于普通方法調(diào)用,在主線程調(diào)用。程序是順序執(zhí)行的,執(zhí)行完才會(huì)執(zhí)行下...
摘要:作用等待其他線程執(zhí)行完后,在執(zhí)行某個(gè)線程。可以多個(gè)線程插隊(duì)到線程,線程等多個(gè)線程結(jié)束后才執(zhí)行類似后面的,而可以等待多個(gè)線程執(zhí)行完才執(zhí)行,靈活性比更大。示例執(zhí)行結(jié)果如下雖然線程休眠了秒,但是依然等到線程輸出后,才輸出。 作用 等待其他線程執(zhí)行完后,在執(zhí)行某個(gè)線程。類似之前的join,但是比join更強(qiáng)大。join可以多個(gè)線程插隊(duì)到A線程,A線程等多個(gè)線程結(jié)束后才執(zhí)行(類似后面的Cycli...
摘要:線程安全問題在并發(fā)編程學(xué)習(xí)之基礎(chǔ)概念提到,多線程的劣勢(shì)之一,有個(gè)線程安全問題,現(xiàn)在看看下面的例子。那么,該怎么解決呢,很簡(jiǎn)單,在方法前加個(gè)同步鎖。運(yùn)行結(jié)果如下有兩種情況,是因?yàn)榭凑l先搶占鎖,但是輸出的算法結(jié)果是正確的。 線程安全問題 在java并發(fā)編程學(xué)習(xí)之基礎(chǔ)概念提到,多線程的劣勢(shì)之一,有個(gè)線程安全問題,現(xiàn)在看看下面的例子。 public class NotSafeDemo { ...
摘要:在并發(fā)編程學(xué)習(xí)之三種線程啟動(dòng)方式中有提過。是否執(zhí)行結(jié)束,包括正常執(zhí)行結(jié)束或異常結(jié)束。獲取返回值,沒有得到返回值前一直阻塞。運(yùn)行結(jié)果如下由于任務(wù)被取消,所以拋出異常。注意的是,此時(shí)線程還在跑,和返回的是。并不能讓任務(wù)真正的結(jié)束。 FutureTask 在java并發(fā)編程學(xué)習(xí)之三種線程啟動(dòng)方式中有提過。主要的方法如下: cancel(boolean mayInterruptIfRunni...
閱讀 3591·2021-11-24 10:19
閱讀 3730·2021-09-30 09:47
閱讀 1293·2019-08-30 15:56
閱讀 790·2019-08-29 15:11
閱讀 905·2019-08-29 13:43
閱讀 3570·2019-08-28 18:25
閱讀 2160·2019-08-26 13:27
閱讀 1439·2019-08-26 11:44