- 浏览: 3558064 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (1491)
- Hibernate (28)
- spring (37)
- struts2 (19)
- jsp (12)
- servlet (2)
- mysql (24)
- tomcat (3)
- weblogic (1)
- ajax (36)
- jquery (47)
- html (43)
- JS (32)
- ibatis (0)
- DWR (3)
- EXTJS (43)
- Linux (15)
- Maven (3)
- python (8)
- 其他 (8)
- JAVASE (6)
- java javase string (0)
- JAVA 语法 (3)
- juddiv3 (15)
- Mule (1)
- jquery easyui (2)
- mule esb (1)
- java (644)
- log4j (4)
- weka (12)
- android (257)
- web services (4)
- PHP (1)
- 算法 (18)
- 数据结构 算法 (7)
- 数据挖掘 (4)
- 期刊 (6)
- 面试 (5)
- C++ (1)
- 论文 (10)
- 工作 (1)
- 数据结构 (6)
- JAVA配置 (1)
- JAVA垃圾回收 (2)
- SVM (13)
- web st (1)
- jvm (7)
- weka libsvm (1)
- weka屈伟 (1)
- job (2)
- 排序 算法 面试 (3)
- spss (2)
- 搜索引擎 (6)
- java 爬虫 (6)
- 分布式 (1)
- data ming (1)
- eclipse (6)
- 正则表达式 (1)
- 分词器 (2)
- 张孝祥 (1)
- solr (3)
- nutch (1)
- 爬虫 (4)
- lucene (3)
- 狗日的腾讯 (1)
- 我的收藏网址 (13)
- 网络 (1)
- java 数据结构 (22)
- ACM (7)
- jboss (0)
- 大纸 (10)
- maven2 (0)
- elipse (0)
- SVN使用 (2)
- office (1)
- .net (14)
- extjs4 (2)
- zhaopin (0)
- C (2)
- spring mvc (5)
- JPA (9)
- iphone (3)
- css (3)
- 前端框架 (2)
- jui (1)
- dwz (1)
- joomla (1)
- im (1)
- web (2)
- 1 (0)
- 移动UI (1)
- java (1)
- jsoup (1)
- 管理模板 (2)
- javajava (1)
- kali (7)
- 单片机 (1)
- 嵌入式 (1)
- mybatis (2)
- layui (7)
- asp (12)
- asp.net (1)
- sql (1)
- c# (4)
- andorid (1)
- 地价 (1)
- yihuo (1)
- oracle (1)
最新评论
-
endual:
https://blog.csdn.net/chenxbxh2 ...
IE6 bug -
ice86rain:
你好,ES跑起来了吗?我的在tomcat启动时卡在这里Hibe ...
ES架构技术介绍 -
TopLongMan:
...
java public ,protect,friendly,private的方法权限(转) -
贝塔ZQ:
java实现操作word中的表格内容,用插件实现的话,可以试试 ...
java 读取 doc poi读取word中的表格(转) -
ysj570440569:
Maven多模块spring + springMVC + JP ...
Spring+SpringMVC+JPA
多线程的实现方式有两种:
1.继承Thread类
2.实现了runnable接口
其实在Thread类内部也是实现了Runnable的接口的,写写代码印象更加深刻下面请看:
//继承Thread类 package endual; public class MyThread extends Thread{ public void run() { System.out.println("Hello word") ; } }
Main的测试类:
package endual; public class MainThreadApp { public static void main(String[] args) { MyThread t = new MyThread() ; t.start() ; //这边用的是start(),可不要用run啊 } }
实现借口的
package endual; public class MyThread2 implements Runnable{ public void run() { System.out.println("Hello word") ; } }
main的测试类
package endual; public class MainApp2 { public static void main(String[] args) { /* * 还记得我们实现了接口不 * 首先定义一个接口然后去实现这个接口 */ Runnable rnn = new MyThread2() ; Thread tt = new Thread(rnn) ; tt.start() ; } }
这样是最基本的创建线程的两种方法。
下面我们来看给线程取名字:我们用的setName和getName的方法。
取名字的话,可以在线程开始前,和线程运行的时候取名字的,但是
我们约定了,要在线程开始前个线程取名字的,并且不要改变jvm线程的名字哦。
package endual; public class MainApp2 { public static void main(String[] args) { /* * 还记得我们实现了接口不 * 首先定义一个接口然后去实现这个接口 */ Runnable rnn = new MyThread2() ; Thread tt = new Thread(rnn) ; tt.setName("我是线程1") ; tt.start() ; //tt.setName("我是线程1") ;不要这样取名字,请在start()前面取名字 } }
这边还有一个知识点就是start()这个方法的启动的时刻哦。
start()方法同志线程规划器这个新线程已经准备好了,而且应当在规划器的最 方便的时候调用这个线程的run()方法的,因为多线程编程的非确定性,程序员不可能确定线程何时会开始的,只知道调用start()是在说明要马上启动线程了。 这也是我这个笔记想强调的一点。
发表评论
-
snmp
2020-04-13 11:07 428https://www.iteye.com/blog/zhan ... -
snmp
2020-04-10 21:33 566https://blog.csdn.net/qq_333141 ... -
服务器监控软件
2019-12-31 11:07 513[ERROR] org.hyperic.sigar.Sigar ... -
多数据源
2019-12-23 22:09 455https://gitee.com/baomidou/dyna ... -
mybatis多数据源
2019-12-23 18:09 449https://blog.csdn.net/qq_288042 ... -
springboot ueditor
2019-12-17 18:26 381https://blog.csdn.net/u01216982 ... -
java支持多数据源
2019-12-13 15:59 456spxcms是否支持多数据源 ... -
java日志
2019-12-10 12:01 297https://blog.csdn.net/peng_wei_ ... -
spring 多数据源
2019-12-06 09:55 432https://www.jb51.net/article/10 ... -
idea
2019-12-04 17:13 411https://blog.csdn.net/dengachao ... -
手机大屏
2019-11-30 16:02 349http://demo.demohuo.top/modals/ ... -
quarz配置
2019-11-08 11:48 462https://blog.csdn.net/BryantLmm ... -
mysql同步
2019-11-06 12:20 352https://blog.csdn.net/baidu_418 ... -
nginx配置多个服务
2019-11-04 20:35 775https://blog.csdn.net/everljs/a ... -
h5 加壳
2019-11-04 16:05 630https://jingyan.baidu.com/artic ... -
jeui 前端框架
2019-10-22 14:30 1208http://www.jemui.com/demo/ http ... -
jeui 维护
2019-10-22 14:29 2http://www.jemui.com/demo/ htt ... -
jeui 维护
2019-10-22 14:29 2http://www.jemui.com/demo/ -
jeui 维护
2019-10-22 14:29 2http://www.jemui.com/demo/ -
jeui 维护
2019-10-22 14:29 2http://www.jemui.com/demo/
相关推荐
Java多线程是Java编程中的重要概念,它允许在单个程序中同时执行多个任务,提高了应用程序的效率和响应速度。在Java中,线程被看作是CPU时间片的执行单元,它们共享同一个地址空间,能高效地交换数据。 线程具有...
多线程是现代编程语言中的一项重要技术,特别是在Java这样的面向对象语言中,多线程能够极大提高程序的性能和响应速度。线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。 ...
### JAVA-基础多线程 #### 一、线程概念 1. **线程定义**: ...这些知识点对于理解和掌握Java多线程编程至关重要。通过这些基础知识的学习,可以更好地应用多线程技术解决实际问题,提高程序的性能和效率。
### Java多线程知识点总结及企业真题解析 #### 一、知识点总结 ##### (1)多线程相关概念 1. **程序、进程和线程的区分**: - **程序**:为了完成特定的任务而编写的指令集合。它是静态的概念。 - **进程**:...
### Java多线程机制详解与示例 #### 一、Java多线程机制概述 Java中的多线程机制是程序设计中的一个重要概念,它允许在同一个应用程序中并发执行多个线程,有效地提高了程序的执行效率和响应速度。通过Java语言...
Java多线程是Java编程中一个非常重要的领域,它允许程序在同一时间执行多个任务,从而提高了效率和资源利用率。在Java中,线程是进程中的一个执行单元,每个进程至少包含一个线程,通常Java虚拟机(JVM)启动时会...
Java多线程编程是开发高并发应用的基础,其中Thread类是实现多线程的核心类。本文将详细解析Thread类的常用结构以及线程优先级。 一、Thread类的常用结构 1. 线程中的构造器 - `Thread()`:创建一个没有指定名称...
线程名称可以通过`setName()`方法设置,而`getName()`用于获取线程名。线程栈模型决定了每个线程有自己的栈空间,存储局部变量和方法调用信息。线程的变量,如成员变量,是共享的,而局部变量仅存在于各自的线程栈中...
Java作为一种广泛使用的编程语言,内置了强大的多线程支持。Java多线程是指在一个Java应用程序中可以同时运行多个线程来执行不同的任务,这种机制极大地提高了程序的并发处理能力。 #### 二、Java多线程的基本概念 ...
在Java编程语言中,多线程是并发执行任务的关键特性,极大地提高了程序的效率和响应速度。本小练习主要关注如何通过继承`Thread`类来创建并运行双线程,以便从1累加到100。下面我们将深入探讨这个话题。 首先,`...
### 多线程与网络编程重点 #### 一、多线程基础概念 在计算机科学领域,多线程是程序设计中的一个重要概念。一个进程可以包含多个线程,每个线程都是进程的一个执行路径。多线程技术允许在一个程序中同时执行多个...
### Java多线程相关知识总结 #### 一、基本概念 多线程是现代编程语言中一项非常重要的特性,尤其在Java...以上就是关于Java多线程的基础知识总结,希望能帮助大家更好地理解和掌握Java多线程的相关概念和技术要点。
在Java多线程编程中,线程安全问题是非常关键的概念,它涉及到多个线程访问共享资源时可能出现的数据不一致或异常情况。本题主要通过两个练习题来加深对线程安全的理解。 ### 练习题1:新年倒计时 #### 题目描述 ...
在Java编程中,多线程是一项核心基础,它允许程序同时执行多个任务,提高了应用程序的效率和响应速度。本文将深入探讨Java中的多线程概念,以及如何在自定义代码中创建线程。 首先,理解进程和线程的基本概念至关...
- **setName()和getName()方法**:用于设置和获取线程的名字,便于区分多个线程。 #### 7. 示例代码扩展 通过以下示例进一步说明如何设置线程名并使用`sleep()`方法控制线程的执行: ```java public class Example2...
Thread类中包含了一系列用于操作线程的方法,如start(), run(), setName(), getName(), setDaemon(), isDaemon(), interrupt(), isAlive()等。 3. Runnable接口:除了继承Thread类,Java还允许通过实现Runnable接口...
对于新手来说,理解和掌握多线程是成为Java程序员的关键步骤。以下是对Java多线程的详细解释: 1. **程序、进程与线程** - **程序**:一组完成特定任务的指令集合,静态代码。 - **进程**:程序的一次执行实例,...
Java中的多线程是编程中一个重要的概念,它允许程序同时执行多个任务,提升系统效率,提供更好的用户体验。本文将详细讲解如何在Java中创建和管理多线程,以及涉及的相关知识点。 首先,创建多线程有两种主要方式:...
- `getName()`和`setName(name)`:分别用于获取和设置线程的名字。 - `isAlive()`:用于判断线程是否正在运行。 - `isDaemon()`和`setDaemon(daemonic)`:用于判断和设置线程是否为守护线程。守护线程不会阻止程序的...