JAVA入門小小白學(xué)習(xí)中ing(throws關(guān)鍵字罪帖、throw關(guān)鍵字促煮、自定義異常邮屁、多線程)

小豬學(xué)習(xí)

小小白慢慢學(xué)習(xí)中ing 第二十八天

努力努力


本日內(nèi)容(throws關(guān)鍵字、throw關(guān)鍵字菠齿、自定義異常佑吝、多線程)


1、throws關(guān)鍵字

用于一個方法的對外聲明:用于表示該方法不處理異常绳匀,交由調(diào)用處進(jìn)行處理芋忿。

????????public static void test()throws ParseException{

????????}

子類重寫父類的方法時,不能拋出比父類更大的異常疾棵。

父類拋出異常戈钢,子類可以不拋出

父類拋出異常,子類可以拋出和父類一樣的或者是比父類小的異常

父類拋出異常是尔,子類不能拋出比父類更大的異常

父類沒有拋出異常殉了,子類也不能拋出異常。

2拟枚、throw關(guān)鍵字

用于代碼中主動拋出一個異常對象:設(shè)計一個方法的功能的時候薪铜,根據(jù)邏輯分析,可以主動拋出一個異常對象恩溅。

代碼級別上隔箍,主動拋出一個異常對象,提示調(diào)用者:產(chǎn)生問題啦暴匠。鞍恢。

以下是String這個類的源代碼:

public char charAt(int index) {

? ? ? ?if ((index < 0) || (index >= value.length)) {

? ? ? ? ? ?throw new StringIndexOutOfBoundsException(index);

? ? ? }

? ? ? ?return value[index];

? }

????對比Exception和RuntimeException的區(qū)別傻粘。

1每窖、Exception是最大的異常父類。RuntimeException是Exception的子類弦悉。

2窒典、RuntimeException是運行時異常,程序不強(qiáng)制一定處理該類型的異常稽莉。Exception的異常瀑志,包含了受檢異常,程序中必須處理該類型的異常污秆。

????對比throws和throw的區(qū)別劈猪。

1、throws關(guān)鍵字良拼,用于表示一個方法向外聲明战得,該方法不處理異常,交由調(diào)用處處理這個異常庸推。處理異常的一種方式:捕獲常侦,拋出浇冰。

2、throw關(guān)鍵字聋亡,代碼中肘习,主動拋出一個異常對象。因為某個邏輯原因坡倔,主動拋出一個異常對象漂佩,打斷程序的執(zhí)行。主動拋出異常對象罪塔。

3仅仆、自定義異常

了解性內(nèi)容:理論知識能夠懂。

自己定義一個類垢袱,用于表示某種異常墓拜。需要繼承Exception或其子類即可。

問題:不是哪個類的對象请契,都有被創(chuàng)建并拋出就能夠打斷程序的功能咳榜。

自定義異常:

class MyException extends Exception{

????????//提供有參構(gòu)造方法。爽锥。

????????public MyException(String msg){

? ? ? ? ? ? ? ? super(msg);//調(diào)用父類的有參構(gòu)造:提供異常的信息

????????}

????????public MyException(){

????????????????super();//父類的無參構(gòu)造涌韩,沒有提供異常的信息

????????}

}

程序中主動拋出一個異常對象:

/*

* 設(shè)計一個方法,用于檢驗?zāi)挲g氯夷,年齡不合法臣樱,拋出一個異常

*/

public static void checkAge(int age) throws MyException{

????????if(age < 0){

????????// return;

????????throw new MyException("年齡不能為負(fù)數(shù)。腮考。");

????????}

????????System.out.println("年齡輸入正確雇毫,請繼續(xù)。踩蔚。棚放。");

}

return和finally的參考資料:

https://blog.csdn.net/zoujian1993/article/details/45362931

4、多線程

4.1 生活中的多任務(wù)

生活中馅闽,有很多的場景下飘蚯,同時干多件事兒。比如開車:同時時候手和腳福也。做作業(yè)同時聽課局骤。泡健身房跑步,聽音樂暴凑。峦甩。。

舞臺表演:邊唱邊跳搬设。

4.2 windows電腦

windows電腦穴店,打開任務(wù)管理器撕捍,發(fā)現(xiàn)電腦中正在執(zhí)行的程序,有多個泣洞。每個程序叫就叫做一個進(jìn)程忧风。

windows電腦可以同時執(zhí)行多個程序?那是因為CPU太快啦球凰。狮腿。

4.3 并行和并發(fā)

串行:任務(wù)一個接一個做。

并行:同時在做多個任務(wù)呕诉。(硬件的支持)

并發(fā):在多個任務(wù)之間快速的切換缘厢,看起來同時執(zhí)行多個任務(wù)。但是實際上甩挫,某一個事件點贴硫,執(zhí)行1個任務(wù)。

?

宏觀并行伊者,微觀串行英遭。

4.4 進(jìn)程

進(jìn)程:就是正在執(zhí)行的程序。占用系統(tǒng)資源亦渗。

一個程序的執(zhí)行挖诸,內(nèi)存,CPU法精。多律。。

?

注意區(qū)分:電腦上安裝的軟件搂蜓。沒有跑起來狼荞,不能算進(jìn)程。

4.5 線程

何為線程:概念:進(jìn)程中的一個執(zhí)行路徑洛勉。

進(jìn)程:一個正在執(zhí)行的程序粘秆。

Word文檔:--->一個進(jìn)程

首字母大寫--->一個線程

檢查拼寫錯。收毫。--->一個線程

。殷勘。此再。。

4.6 進(jìn)程和線程

1玲销、進(jìn)程:一個正在執(zhí)行的程序:JVM正在執(zhí)行的程序

2输拇、線程:正在執(zhí)行的程序中的一條執(zhí)行路徑

3、多線程:一個進(jìn)程中贤斜,可以同時有多條線程一起執(zhí)行策吠。

如果一個進(jìn)程沒有了逛裤,該進(jìn)程中的線程也就沒有了。

如果線程沒有了猴抹,但是進(jìn)程不一定的带族。

4.7 Java中對于多線程的支持

Java中如何實現(xiàn)多任務(wù)的?多線程

Thread類:JDK提供好的蟀给,Thread類,就是java中關(guān)于多線程的實現(xiàn)。線程的功能都封裝在了該類中潭枣。

?

要使用線程筷厘,來實現(xiàn)程序的并發(fā):一個程序,同時干多件事前普。

比如:唱歌肚邢,同時跳舞

Thread類來實現(xiàn)

????Java代碼,如何創(chuàng)建一條線程拭卿?如何啟動起來道偷?執(zhí)行功能?

兩種創(chuàng)建線程的方式

A:創(chuàng)建線程并啟動:繼承Thread類

????????step1:創(chuàng)建子類记劈,繼承Thread類勺鸦。

????????step2:重寫run(),線程體目木。并發(fā)執(zhí)行的內(nèi)容换途,寫在這個方法中。

????????step3:啟動線程:start()

????????/*

????????class Cat

????????class Person

????????class MyException extends Exception{//異常類

????????}

????????class MyThread extends Thread{//線程類

????????}

????????*/

B:實現(xiàn)Runnable接口刽射,創(chuàng)建線程的方式二

????????step1:創(chuàng)建實現(xiàn)類军拟,實現(xiàn)Runnable接口

????????step2:重寫run(),線程體誓禁。并發(fā)執(zhí)行的內(nèi)容懈息,寫在這個方法中。

????????step3:啟動線程:

????????創(chuàng)建實現(xiàn)類的對象:mt

????????根據(jù)實現(xiàn)類對象mt摹恰,創(chuàng)建Thread類對象t3辫继,t4

????????start()啟動該線程:t3,t4

對比run()和start()

????????run()俗慈,是線程體姑宽。就是要并發(fā)執(zhí)行內(nèi)容。

????????start()闺阱,啟動一個線程炮车?就是該線程準(zhǔn)備就緒了,隨時可以被CPU執(zhí)行。什么時候執(zhí)行瘦穆,CPU自己說了算纪隙。

????????一個線程,只能被start一次扛或。

Thread類的構(gòu)造方法

????????new Thread();//并發(fā)執(zhí)行绵咱,執(zhí)行run()方法。

????????new Thread(Runnable target);//并發(fā)執(zhí)行告喊,執(zhí)行的run是Runnable接口的實現(xiàn)類實現(xiàn)run方法



希望我能堅持住每天堅持記錄著 ...

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末麸拄,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子黔姜,更是在濱河造成了極大的恐慌拢切,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,948評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件秆吵,死亡現(xiàn)場離奇詭異淮椰,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)纳寂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評論 3 385
  • 文/潘曉璐 我一進(jìn)店門主穗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人毙芜,你說我怎么就攤上這事忽媒。” “怎么了腋粥?”我有些...
    開封第一講書人閱讀 157,490評論 0 348
  • 文/不壞的土叔 我叫張陵晦雨,是天一觀的道長。 經(jīng)常有香客問我隘冲,道長闹瞧,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,521評論 1 284
  • 正文 為了忘掉前任展辞,我火速辦了婚禮奥邮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘罗珍。我一直安慰自己洽腺,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,627評論 6 386
  • 文/花漫 我一把揭開白布靡砌。 她就那樣靜靜地躺著已脓,像睡著了一般。 火紅的嫁衣襯著肌膚如雪通殃。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,842評論 1 290
  • 那天,我揣著相機(jī)與錄音画舌,去河邊找鬼堕担。 笑死,一個胖子當(dāng)著我的面吹牛曲聂,可吹牛的內(nèi)容都是我干的霹购。 我是一名探鬼主播,決...
    沈念sama閱讀 38,997評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼朋腋,長吁一口氣:“原來是場噩夢啊……” “哼齐疙!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起旭咽,我...
    開封第一講書人閱讀 37,741評論 0 268
  • 序言:老撾萬榮一對情侶失蹤贞奋,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后穷绵,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體轿塔,經(jīng)...
    沈念sama閱讀 44,203評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,534評論 2 327
  • 正文 我和宋清朗相戀三年仲墨,在試婚紗的時候發(fā)現(xiàn)自己被綠了勾缭。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,673評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡目养,死狀恐怖俩由,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情癌蚁,我是刑警寧澤幻梯,帶...
    沈念sama閱讀 34,339評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站匈勋,受9級特大地震影響礼旅,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜洽洁,卻給世界環(huán)境...
    茶點故事閱讀 39,955評論 3 313
  • 文/蒙蒙 一痘系、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧饿自,春花似錦汰翠、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至烛卧,卻和暖如春佛纫,著一層夾襖步出監(jiān)牢的瞬間妓局,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評論 1 266
  • 我被黑心中介騙來泰國打工呈宇, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留好爬,地道東北人。 一個月前我還...
    沈念sama閱讀 46,394評論 2 360
  • 正文 我出身青樓甥啄,卻偏偏與公主長得像存炮,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子蜈漓,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,562評論 2 349

推薦閱讀更多精彩內(nèi)容