- start 启动线程 执行run方法
 - setName,getName 设置、获取线程名称
 - currentThreadd() 返回执行当前代码的线程
 - yieid() 是否当前cpu执行权; 但是还是有可能抢到执行权
 - sleep() 阻塞当前线程 单位毫秒
 - join 线程A中使用线程B调用join方法 此时线程A阻塞 等待线程B执行完毕后 线程A继续执行
 isAlive 判断当前线程是否还存活 ```java /**
- 创建人:LYY
 - 创建时间:2022/4/25
 线程常用的方法 */ public class ThreadMethod {
public static void main(String[] args) {
ThreadOne threadOne1 = new ThreadOne(); try {
// 设置当前线程名称Thread.currentThread().setName("主线程:");// 设置线程名称threadOne1.setName("线程一:");// 启动线程 执行操作threadOne1.start();// 主线程执行for (int i = 0; i < 100; i++) {if (i % 2 != 0) {System.out.println(Thread.currentThread().getName() + "i = " + i);}if (i == 23) {// 释放当前线程cpu的执行权; 但是可能还会抢到执行权threadOne1.yield();}if (i == 29) {// 判断当前线程是否还存活boolean alive = threadOne1.isAlive();// A线程中调用B线程 此时阻塞A线程 直至B线程执行完成后 A线程继续执行threadOne1.join();}}
} catch (InterruptedException e) {e.printStackTrace();}}
}
```java/*** 创建人:LYY* 创建时间:2022/4/25** 多线程创建方式一:* 1. 创建一个继承Thread类的子类* 2. 重写Thread类的run方法* 3. 将要执行的内容写在run方法体内* 4. 通过对象调用当前子类的start方法*/public class ThreadOne extends Thread{@Overridepublic void run() {// 输出1-100的偶数for (int i = 0; i < 100; i++) {if (i % 2 == 0) {System.out.println(this.getName() + "i = " + i + "**");}if (i == 50) {// 睡眠(阻塞)3秒后执行try {sleep(3000);} catch (InterruptedException e) {e.printStackTrace();}}}}}
