From 8c0adb8143e24b57ea02eccb49565dc90b2d3703 Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Thu, 6 Aug 2026 10:14:25 +0800 Subject: [PATCH] =?UTF-8?q?s-day05-=E5=8C=BF=E5=90=8D=E5=86=85=E9=83=A8?= =?UTF-8?q?=E7=B1=BB=E5=AE=9E=E7=8E=B0=E5=A4=9A=E7=BA=BF=E7=A8=8B=EF=BC=88?= =?UTF-8?q?=E9=87=8D=E7=82=B9=E6=8E=8C=E6=8F=A1=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/inmind/thread_noname03/Demo04.java | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 s-day06/src/com/inmind/thread_noname03/Demo04.java diff --git a/s-day06/src/com/inmind/thread_noname03/Demo04.java b/s-day06/src/com/inmind/thread_noname03/Demo04.java new file mode 100644 index 0000000..d788d16 --- /dev/null +++ b/s-day06/src/com/inmind/thread_noname03/Demo04.java @@ -0,0 +1,58 @@ +package com.inmind.thread_noname03; + +/* +匿名内部类的语法: + new 父类名|接口名(){ + 要重写的方法 + } + + 匿名内部类的作用:将父类或者接口的子类(实现类)的定义和对象的创建用一段代码操作完毕 + 匿名内部类一定是多态 + + 多线程的启动方式 + 1.继承Thread + 2.实现Runnable + */ +public class Demo04 { + public static void main(String[] args) { + //普通写法,非匿名内部类(开启线程方式一:继承Thread) + /*MyThread myThread = new MyThread(); + myThread.start();*/ + System.out.println("-------------------------"); + //匿名内部类启动线程,方式一 + Thread thread = new Thread(){ + @Override + public void run() { + System.out.println("匿名内部类启动了子线程:"+Thread.currentThread().getName()); + } + }; + thread.start(); + //普通写法,非匿名内部类(开启线程方式二:实现Runnable) + //Thread thread = new Thread(myRunnable, "线程666"); + + //匿名内部类启动线程,方式二:实现Runnable + Thread thread1 = new Thread(new Runnable() { + @Override + public void run() { + System.out.println("匿名内部类启动了子线程(Runnable):"+Thread.currentThread().getName()); + } + }); + thread1.start(); + System.out.println("-----------匿名对象+匿名内部类写法--------------"); + //方式一:继承Thread + new Thread(){ + @Override + public void run() { + System.out.println("匿名对象+匿名内部类启动了子线程(继承Thread):"+Thread.currentThread().getName()); + } + }.start(); + + //方式二:实现Runnable + new Thread(new Runnable() { + @Override + public void run() { + System.out.println("匿名对象+匿名内部类启动了子线程(实现Runnable):"+Thread.currentThread().getName()); + } + }).start(); + } +}