1.继承Thread类创建线程

package com.practise.createthread;

public class AnonymousThread {
public static void main(String[] args) {
new Thread("线程一") {
public void run() {
for(int i=1;i<=20;i++) {
System.out.println(Thread.currentThread().getName()+":"+i);
}
}
}.start(); Thread.currentThread().setName("主线程");
for(int i=1;i<=20;i++) {
System.out.println(Thread.currentThread().getName()+":"+i);
}
}
}

   2.实现Runnable接口创建线程

package com.practise.createthread;

public class AnonymousThread {
public static void main(String[] args) {
new Thread(new Runnable() { @Override
public void run() {
for(int i=1;i<=20;i++) {
System.out.println(Thread.currentThread().getName()+":"+i);
}
}
}, "线程二").start(); Thread.currentThread().setName("主线程");
for(int i=1;i<=20;i++) {
System.out.println(Thread.currentThread().getName()+":"+i);
}
}
}

   3.使用Callable和Future创建线程

package com.practise.createthread;

import java.util.concurrent.Callable;
import java.util.concurrent.FutureTask; public class AnonymousThread {
public static void main(String[] args) {
FutureTask<Integer> task=new FutureTask<Integer>(new Callable<Integer>() {
@Override
public Integer call() {
Integer total = 0;
try {
for (int i = 1; i <= 50; i++) {
total += i;
}
return total;
} catch (Exception ex) {
ex.printStackTrace();
}
return null;
}
}); new Thread(task, "有返回值的线程").start();
try {
System.out.println(task.get());
} catch (Exception ex) {
ex.printStackTrace();
} Thread.currentThread().setName("主线程");
for (int i = 1; i <= 20; i++) {
System.out.println(Thread.currentThread().getName() + ":" + i);
}
}
}

Java多线程-----匿名内部类创建线程的更多相关文章

  1. java多线程之创建线程的4种方式及Future

    Java使用Thread类代表线程,所有的线程对象都必须是Thread类或其子类的实例.Java可以用四种方式来创建线程: 继承Thread创建线程 实现Runnable接口创建线程 实现callab ...

  2. Java多线程——之一创建线程的四种方法

    1.实现Runnable接口,重载run(),无返回值 package thread; public class ThreadRunnable implements Runnable { public ...

  3. Java多线程之创建线程的三种方式比较

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6560057.html  一:继承Thread类创建线程 1:继承Thread类定义线程子类: 2:重写run( ...

  4. java 多线程 day01 创建线程

    线程,即代码的执行路径java 面向对象编程.所以线程在java中也是用对象来表示的,创建线程对象的类就是 Thread如下代码即开启一个新的线程,通过线程对象的start方法,即可启动线程 Thre ...

  5. JAVA·多线程:创建线程的两种方式

    1.–扩展java.lang.Thread类 package multiThread; public class Thread02extThread { public static void main ...

  6. 【Java】学习路径46-两种创建多线程的方法、以及在匿名内部类创建线程

    两种方法: 1.创建一个继承自Thread的线程类,然后再main(不限)中构造这个线程类对象.方法在之前讲过. 2.创建一个使用Runnable接口的线程类,然后在main(不限)中构造这个Runn ...

  7. -1-5 java 多线程 概念 进程 线程区别联系 java创建线程方式 线程组 线程池概念 线程安全 同步 同步代码块 Lock锁 sleep()和wait()方法的区别 为什么wait(),notify(),notifyAll()等方法都定义在Object类中

     本文关键词: java 多线程 概念 进程 线程区别联系 java创建线程方式 线程组 线程池概念 线程安全 同步 同步代码块 Lock锁  sleep()和wait()方法的区别 为什么wait( ...

  8. Java多线程系列--“JUC线程池”06之 Callable和Future

    概要 本章介绍线程池中的Callable和Future.Callable 和 Future 简介示例和源码分析(基于JDK1.7.0_40) 转载请注明出处:http://www.cnblogs.co ...

  9. Java多线程系列--“JUC线程池”02之 线程池原理(一)

    概要 在上一章"Java多线程系列--“JUC线程池”01之 线程池架构"中,我们了解了线程池的架构.线程池的实现类是ThreadPoolExecutor类.本章,我们通过分析Th ...

随机推荐

  1. django--验证码功能实现

    首先建立验证码的视图函数1需要安装pillow库 #导入绘图库 from PIL import ImageDraw #导入绘图字体库 from PIL import ImageFont #导入图片库 ...

  2. linux基本介绍和使用

    基本介绍 Linux入门教程 快捷键     linux 快捷键 用户及用户组 linux之用户和用户组

  3. HashMap如何解决取Value值为Null

    场景: 用HashMap方法时候,取Keys时候自认为敲的肯定是准确无误,然后能得到对应的Values 值.  但写脚本代码时候不好习惯,没事总喜欢敲个空格建,导致取Keys之后多空格. Featur ...

  4. js面向对象、创建对象的工厂模式、构造函数模式、原型链模式

    JS面向对象编程(转载) 什么是面向对象编程(OOP)?用对象的思想去写代码,就是面向对象编程. 面向对象编程的特点 抽象:抓住核心问题 封装:只能通过对象来访问方法 继承:从已有对象上继承出新的对象 ...

  5. 关于javascript中defineProperty的学习

    语法 Object.defineProperty(obj, prop, descriptor) 参数 obj 要在其上定义属性的对象. prop 要定义或修改的属性的名称. descriptor 将被 ...

  6. ext3文件系统挂载优化--HBase

    1.设置noatime属性禁止记录文件访问时间戳以减少内核的管理开销 2.优化磁盘每个块为关键系统进程保留的固定空间:这个功能对关键磁盘比较有用, 比如操作系统依赖的磁盘,但这个功能对于数据存储来说几 ...

  7. 10.5-uC/OS-III内部任务(时基任务OS-TickTask())

    几乎所有的实时系统都需要有一个能提供周期性时间的时间源,叫做时基周期或系统周期. uC/OS-III的时基周期处理程序封装在OS_TICK.C文件中. OS_TickTask()任务被uC/OS-II ...

  8. 第八节:分支开发之合并到master

    流程:在客户端创建分支,修改代码,并push,然后在页面处理即可.(区别在于一个在客户端,一个在页面) 实际的开放中要记得打tag,不然到时候出问题了以后不知道从哪里开始.

  9. logback 常用配置详解(序)logback 简介

    转自:http://aub.iteye.com/blog/1101260 logback 简介 Ceki Gülcü在Java日志领域世界知名.他创造了Log4J ,这个最早的Java日志框架即便在J ...

  10. windows无法安装到这个磁盘。选中的磁盘采用GPT分区形式 Windows 检测到 EFI 系统分区格式化为 NTFS。将 EFI 系统分区个数化为 FAT32,然后重新启动安装

    win10安装问题解决 问题 1.windows无法安装到这个磁盘.选中的磁盘采用GPT分区形式 解决方法: 1.bios,更改 uefi/legacy boot 为ueei only 后面可以安装了 ...