![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
dsd2333
努力、奋进、拼搏,记住自己的目标
展开
-
线程同步的7种方式
为什么要使用同步呢? 我们熟知JAVA中允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时(如数据的增删改查)。 将会导致数据不准确,相互之间产生冲突,因此加入同步锁以避免在该线程没有完成操作之前,被其他线程调用,从而保证了该变量的唯一性和准确性。 1、同步方法 有synchronized关键字修饰的方法。 由于java的每个对象都有一个内置锁,当用此关键字修饰方法时,内置锁会...原创 2018-07-31 20:13:08 · 543 阅读 · 0 评论 -
final、finally以及finalize的区别
final用以声明属性、方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。 finally是异常处理语句中的一部分,表示总是执行。 finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如:关闭文件等。 final—修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作...原创 2018-07-31 12:11:16 · 516 阅读 · 0 评论 -
多线程安全问题
多线程安全问题产生的原因: 1、是否是多线程环境。 2、线程任务中有处理到共享数据。 3、线程任务中有多条语句对共享数据的操作。 一个线程在操作共享数据的过程中,其他线程参与了运算,造成了数据的错误。 程序中: 是多线程环境。有Thread 拥有共享数据。100张电影票 线程任务中有多条语句对共享数据进行操作。 解决的思想: 只要保证多条操作共享数据的代码在某一时间段,被一...转载 2018-07-29 09:22:10 · 201 阅读 · 0 评论 -
JAVA基础
一、JAVA基本数据类型的基本操作 Math类相关函数 (1)double floor(double a):表示向下取整,返回的类型是double,但表示的是int类型的数据,因此需要强制类型转换为int。 例:Math.floor(1.5) = 1; Math.floor(-1.5) = -2; (2)long round(double a):首先要注意的是这里...原创 2018-08-23 22:26:41 · 275 阅读 · 0 评论 -
JAVA基础 —— 关键字、泛型、常见类的方法
常用关键字 instanceof instanceof是java的一个二元操作符,也是java的保留关键字。它的作用是测试它左边的对象是否是它右边类的实例,返回boolean类型的数据。 final、finally、finalize区别 final可以修饰类、方法、变量: final修饰类代表类不可被继承 final修饰变量表示变量不可被修改 final修饰方法表示方法不可以被重写...原创 2018-11-23 10:52:06 · 411 阅读 · 0 评论