注解 annotation
可以对程序作出说明解释,还可以被程序读取
内置注解:jdk提供的
@Override 表示这个方法是子类重写父类的方法,只能使用在方法上面
@Deprecated 表示 一个类或者方法或者属性或者接口等 已过时,不推荐使用
@SuppressWarnings 表示取消警告信息
元注解:标记在其他注解之上的注解
@Target 用于描述注解的使用范围
属性:ElementType[] value();
枚举ElementType:
常量值 TYPE, FIELD, METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE
@Retention 用于描述注解的生命周期
属性:RetentionPolicy value();
枚举RetentionPolicy:
常量值 SOURCE(只在源代码中保留) CLASS(在class文件中保留) RUNNTIME(在运行时保留)
自定义注解:
@Target
@Retention
@interface 注解名{
数据类型 value();如果注解中只有一个属性,一般使用value作为属性名称
}
--------------------------------------------------------
线程
进程:是系统中正在运行的一个程序
线程:一个进程可以由多个线程组成,能够实现并发执行。
区别:
线程与线程之间共享同一个进程的资源内存。
进程和进程之间资源不共享,各自拥有独立的内存
并发只是在宏观上可以说是同时执行
微观上是一个一个执行的,只不过时间间隔(时间片)非常短
在计算机中,使用时间片来实现宏观上的并发执行
在一个时间片内执行执行一个线程。
开启多线程的方式:
方法一: 1.创建多线程的类 extends Thread 重写run方法
MyThread extends Thread
2.创建线程对象 调用start()方法开启线程
MyThread th = new MyThread();
th.start();
方法二: 1. 实现Runnable接口,实现run方法
MyRunnable runable = new MyRunnable();
2. 创建线程对象 调用start()开启线程
Thread th = new Thread(runable);
th.start();
方法二的优势:多个线程之间可以方便共享同一份资源
Thread类中的常用方法:
run() : 线程要执行的任务都在run()方法内
getName(): 获取线程名字
start():开启多线程
setPriority(int p) :设置线程的优先级 默认是5,最高是10 最低是1
getPriority():获取线程的优先级
interrupt() :中断线程
join():等待该线程终止
main线程中调用j.join(): main进入阻塞状态,等待j线程执行完毕
静态方法:
Thread.currentThread() :获取当前正在执行的线程对象
Thread.yield():让当前正在执行的线程回到可运行状态(就绪状态)
Thread.sleep(long time):让当前线程进入阻塞状态
线程同步,并发:多个线程访问同一份资源 的时候 确保这份资源是安全的 也叫线程安全
关键字:synchronized 同步的
用法1:同步方法
public synchronized void test(){}
用法2:同步代码块
synchronized(对象){}
-----------------------------------------------
线程
mysql
作业:
复制指定目录下所有文件到新指定的目录下
src = "a/b"
dest = "a/c"
讲师笔记,Java基础学习之路之day25——注解,线程
猜你喜欢
转载自blog.csdn.net/u011189148/article/details/81417222
今日推荐
周排行