摘要:實(shí)現(xiàn)多線程的兩種方的開發(fā)包中,已經(jīng)自帶了對(duì)多線程的支持,我們可以通過(guò)這個(gè)很方便的進(jìn)行多線程的編程。實(shí)現(xiàn)多線程的方式有兩種,一種是繼承類,另外一種是實(shí)現(xiàn)接口,接下來(lái)開始介紹這這兩種多線程的實(shí)現(xiàn)方式。
繼承
Java并發(fā)很大程度上應(yīng)用了繼承.
關(guān)鍵字:extends
public class A{ public void abc(){ System.out.println("Hello"); } } public class B extends A{ @Override public void abc(){ System.out.println("World"); } }Java的線程
獲得當(dāng)前線程的名稱
Thread.currentThread().getName()
public class Main{ public static void main(String[] args){ System.out.println(Thread.currentThread().getName()); } }
main
執(zhí)行結(jié)果是main,意思是一個(gè)叫做main的線程在執(zhí)行方法main(),我們把main線程叫做主線程。
一個(gè)進(jìn)程在運(yùn)行的時(shí)候至少會(huì)有一個(gè)線程在執(zhí)行,此時(shí)這個(gè)線程就是由JVM創(chuàng)建的。java 實(shí)現(xiàn)多線程的兩種方
JDK的開發(fā)包中,已經(jīng)自帶了對(duì)多線程的支持,我們可以通過(guò)這個(gè)很方便的進(jìn)行多線程的編程。實(shí)現(xiàn)多線程的方式有兩種,一種是繼承Thread類,另外一種是實(shí)現(xiàn)Runnable接口,接下來(lái)開始介紹這這兩種多線程的實(shí)現(xiàn)方式。1. 繼承Thread類
package com.king; public class One extends Thread { //繼承了Thread方法后重寫其中的run方法 public void run(){ super.run(); System.out.println(" one Thread");; } }
package com.king; public class Test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub System.out.println(Thread.currentThread().getName()); One one=new One(); //必須調(diào)用start方法才開始了多線程。 one.start(); System.out.println(one.getName()); } }
結(jié)果
main Thread-0 one Thread2.實(shí)現(xiàn)Runnable接口
public class Main implements Runnable
Runnable接口中只有一個(gè)方法,就是run,所以我們直接實(shí)現(xiàn)就好,運(yùn)行如下:
public class Main { public static void main(String[] args){ Thread thread=new Thread(new TheThread()); thread.start(); } } class TheThread implements Runnable{ public void run() { System.out.println("hello"); } }
另外一種方式實(shí)現(xiàn)Runnable接口:
public class Main { public static void main(String[] args){ Thread thread=new Thread(new Runnable() { public void run() { System.out.println("hello"); } }); thread.start(); } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/71033.html
摘要:線程的可能實(shí)現(xiàn)方式基本上主流的操作系統(tǒng)都支持線程,也提供了線程的實(shí)現(xiàn)。使用用戶線程和內(nèi)核線程混合實(shí)現(xiàn)在這種混合實(shí)現(xiàn)下,既存在用戶線程,也存在內(nèi)核線程。 進(jìn)程與線程 在傳統(tǒng)的操作系統(tǒng)中,最核心的概念是進(jìn)程,進(jìn)程是對(duì)正在運(yùn)行的程序的一個(gè)抽象。進(jìn)程的存在讓并行成為了可能,在一個(gè)操作系統(tǒng)中,允許運(yùn)行著多個(gè)進(jìn)程,這些進(jìn)程看起來(lái)是同時(shí)在運(yùn)行的。如果我們的計(jì)算機(jī)同時(shí)運(yùn)行著 web 瀏覽器、電子郵件客...
摘要:大多數(shù)待遇豐厚的開發(fā)職位都要求開發(fā)者精通多線程技術(shù)并且有豐富的程序開發(fā)調(diào)試優(yōu)化經(jīng)驗(yàn),所以線程相關(guān)的問題在面試中經(jīng)常會(huì)被提到。掌握了這些技巧,你就可以輕松應(yīng)對(duì)多線程和并發(fā)面試了。進(jìn)入等待通行準(zhǔn)許時(shí),所提供的對(duì)象。 最近看到網(wǎng)上流傳著,各種面試經(jīng)驗(yàn)及面試題,往往都是一大堆技術(shù)題目貼上去,而沒有答案。 不管你是新程序員還是老手,你一定在面試中遇到過(guò)有關(guān)線程的問題。Java語(yǔ)言一個(gè)重要的特點(diǎn)就...
摘要:抽象類表示的是,這個(gè)對(duì)象是什么。下面提供了一個(gè)完整的有返回結(jié)果的多線程測(cè)試?yán)?,在下?yàn)證過(guò)沒問題可以直接使用。創(chuàng)建固定數(shù)目線程的線程池。創(chuàng)建一個(gè)支持定時(shí)及周期性的任務(wù)執(zhí)行的線程池,多數(shù)情況下可用來(lái)替代類。 接口和抽象類有什么區(qū)別你選擇使用接口和抽象類的依據(jù)是什么? 接口和抽象類的概念不一樣。接口是對(duì)動(dòng)作的抽象,抽象類是對(duì)根源的抽象。抽象類表示的是,這個(gè)對(duì)象是什么。接口表示的是,這個(gè)對(duì)象...
摘要:并發(fā)編程實(shí)戰(zhàn)水平很高,然而并不是本好書。一是多線程的控制,二是并發(fā)同步的管理。最后,使用和來(lái)關(guān)閉線程池,停止其中的線程。當(dāng)線程調(diào)用或等阻塞時(shí),對(duì)這個(gè)線程調(diào)用會(huì)使線程醒來(lái),并受到,且線程的中斷標(biāo)記被設(shè)置。 《Java并發(fā)編程實(shí)戰(zhàn)》水平很高,然而并不是本好書。組織混亂、長(zhǎng)篇大論、難以消化,中文翻譯也較死板。這里是一篇批評(píng)此書的帖子,很是貼切。俗話說(shuō):看到有這么多人罵你,我就放心了。 然而知...
摘要:例子如下可以用如下方式創(chuàng)建并運(yùn)行上述子類一旦線程啟動(dòng)后方法就會(huì)立即返回,而不會(huì)等待到方法執(zhí)行完畢才返回。但是,事實(shí)上方法并非是由剛創(chuàng)建的新線程所執(zhí)行的,而是被創(chuàng)建新線程的當(dāng)前線程所執(zhí)行了。這是因?yàn)榫€程是并行執(zhí)行而非順序的。 showImg(http://segmentfault.com/img/bVbN5u); Java線程類也是一個(gè)object類,它的實(shí)例都繼承自java.lang...
摘要:多線程編程這篇文章分析了多線程的優(yōu)缺點(diǎn),如何創(chuàng)建多線程,分享了線程安全和線程通信線程池等等一些知識(shí)。 中間件技術(shù)入門教程 中間件技術(shù)入門教程,本博客介紹了 ESB、MQ、JMS 的一些知識(shí)... SpringBoot 多數(shù)據(jù)源 SpringBoot 使用主從數(shù)據(jù)源 簡(jiǎn)易的后臺(tái)管理權(quán)限設(shè)計(jì) 從零開始搭建自己權(quán)限管理框架 Docker 多步構(gòu)建更小的 Java 鏡像 Docker Jav...
閱讀 2890·2023-04-26 02:02
閱讀 2749·2023-04-25 20:38
閱讀 4383·2021-09-26 09:47
閱讀 3277·2021-09-10 10:50
閱讀 3944·2021-09-07 09:58
閱讀 3438·2019-08-30 15:54
閱讀 2815·2019-08-30 15:54
閱讀 2053·2019-08-29 17:03