java
口木槑
这个作者很懒,什么都没留下…
展开
-
object中的equals方法
java核心技术卷Iequals方法的通用约定:自反性,对称性,传递性,一致性,对于任何非null的引用值x,x.equals(null)必须返回false。编写equals方法的建议:1)显式参数命名为otherObject,稍后需要将它转换成另一个叫做other的变量。2)检测this与otherObject是否引用同一个对象:if (this == otherObj...翻译 2020-04-11 16:22:55 · 291 阅读 · 0 评论 -
使用序列化进行深拷贝
package sun.com.cn.java;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.ObjectInputStream;import j...翻译 2020-01-16 21:16:12 · 489 阅读 · 0 评论 -
myEclipse构建java工程怎么导入第三方的jar文件
由myEclipse创建的java项目并不像创建的Web项目一样,创建完成就有lib文件夹。Java项目中没有,那么这时候如果要引入第三方的jar文件该怎么做呢。首先右键单击项目在弹出的对话框中选择Build path ---> Configure build path,如下图所示。 第二步,选择 Libraries下的Add library...,如下图所示...原创 2018-11-25 11:20:14 · 1396 阅读 · 0 评论 -
生产者消费者模式代码实现
生产者消费者模式:不同种类的线程间针对同一个资源的操作问题: A:如果消费者先抢到cpu的执行权,就会去消费数据,但是现在的数据是默认值,没有意义,应该等着数据有意义,再消费B:如果生产者先抢到cpu的执行权,就会去产生数据,但是,他产生完数据后,还继续拥有执行权,他继续产生数据。应该等着消费者把数据消费掉,然后再生产。正常思路: A: 生产者 先看是否有...原创 2018-09-29 16:38:36 · 1131 阅读 · 0 评论 -
手写死锁代码
public class MyLock { public static Object objA = new Object(); public static Object objB = new Object();}public class DieLock extends Thread{ private boolean flag; public DieLock...原创 2018-09-29 16:27:58 · 390 阅读 · 0 评论 -
线程基础小记
一、进程与线程的定义与意义进程:就是正在运行的程序。进程是系统进行资源分配和调用的独立单元,每一个进程都有它自己的内存空间和系统资源。线程:在同一个进程内又可以执行多个任务,而每一个任务就可以看成是一个线程。 线程是程序的执行单元,执行路径,是程序使用cpu的基本单位。多进程的意义:提高cpu的使用率多线程的意义:提高应用程序的使用率二、并发与并行概念的区别...原创 2018-09-29 10:18:27 · 166 阅读 · 0 评论 -
多线程下的设计模式之Master-Worker模式
该模式可以简单理解为:首先client将任务交给Master,Master中使用一个并发集合类来承载所有任务,使用一个集合去承载所有的Worker对象,并且有一个并发集合类来承载每一个Worker并发处理任务的结果集;每一个Worker是一个工作线程,所以首先要实现Runnable接口,每一个Worker对象还有Master中承载任务集合的引用来获取任务,每一个Worker对象有一个Master中...翻译 2018-10-01 19:30:44 · 166 阅读 · 0 评论 -
集合使用迭代器遍历删除元素的问题
记一次面试问题:在集合中删除元素再普通不过,一般想到的就是for循环遍历,在里面删除指定的元素,如下所示:public class Main { public static void main(String[] args) { ArrayList<Integer> lists = new ArrayList<>(); for...原创 2018-10-01 10:49:11 · 6790 阅读 · 0 评论 -
String、StringBuffer和StringBuilder的区别
StringString的创建机理由于String在java中使用过于频繁,Java为了避免在一个系统中产生大量的String对象,引入了字符串常量池。其运行机制是:创建一个字符串时,首先检查常量池中是否有值相同的字符串对象,如果有则不需要创建直接从常量池中查找到的对象引用,如果没有则新建字符串对象,返回对象引用,并且将新创建的对象放入常量池中。但是,通过new方法创建的String对象是...原创 2018-08-29 15:18:25 · 127 阅读 · 0 评论