摘要:
说明 System.exit() 的本质是通知 JVM 关闭。 一般来说,有两种禁用 System.exit() 的办法: 安全管理器 安全策略 本质都是JRE 提供的本地实现,在执行之前进行权限判断。 因为System.exit() 是一种很暴力的手段,如果在 Client 模式下自己写个小程序无 阅读全文
随笔档案-2018年01月
【转】Java中关于WeakReference和WeakHashMap的理解
2018-01-31 16:36 by faunjoe88, 232 阅读, 收藏,
摘要:
新美大的10月11日的笔试中有一道选择题,让选择函数返回结果,代码如下: 运行结果是“cde”。 该题关键在考察WeakReference和WeakHashMap的理解。 先说下一点Java GC内容 在Java里, 当一个对象object被创建时,它被放在Heap里。当GC运行的时候,如果发现没有 阅读全文
使用@SuppressWarnings("unchecked")消除非受检警告
2018-01-31 11:36 by faunjoe88, 879 阅读, 收藏,
摘要:
使用泛型编程时,会遇到许多编译器警告,如:非受检强制转化警告,非受检方法调用警告,非受检普通数组创建警告,费受精转换警告.这次的内容就是遇到这些警告的时候你该怎么办 PS:非受检警告就是代码上黄色的感叹号 1.首先,要尽可能地通过泛型控制消除每一个非受检警告.这意味着你将不会在运行时出现ClassC 阅读全文
List环形双向链表
2018-01-16 00:58 by faunjoe88, 719 阅读, 收藏,
摘要:
实现一个环形的双向链表,链表的每个节点都保存三个信息,当前节点的值value,前一个节点的指针prev,后一个节点的指针next。因为是环形的,所以最后一个节点的next指向第一个节点,而第一个节点的prev指向最后一个节点 如果只存在一个节点,那么这个节点的prev和next都会指向这个节点本身。 阅读全文
对Java Serializable(序列化)的理解和总结
2018-01-15 17:18 by faunjoe88, 288 阅读, 收藏,
摘要:
1、序列化是干什么的? 简单说就是为了保存在内存中的各种对象的状态(也就是实例变量,不是方法),并且可以把保存的对象状态再读出来。虽然你可以用你自己的各种各样的方法来保存object states,但是Java给你提供一种应该比你自己好的保存对象状态的机制,那就是序列化。2、什么情况下需要序列化 a 阅读全文
Java中的关键字 transient
2018-01-15 16:29 by faunjoe88, 183 阅读, 收藏,
摘要:
先解释下Java中的对象序列化 在讨论transient之前,有必要先搞清楚Java中序列化的含义; Java中对象的序列化指的是将对象转换成以字节序列的形式来表示,这些字节序列包含了对象的数据和信息,一个序列化后的对象可以被写到数据库或文件中,也可用于网络传输,一般当我们使用缓存cache(内存空 阅读全文
Java JDBC 连接高版本的Oracle和MySql、SqlServer 的时候,不需要写Class.forName 方法
2018-01-12 15:28 by faunjoe88, 0 阅读, 收藏,
该文被密码保护。 阅读全文
AQS2:可重入和阻塞
2018-01-11 16:55 by faunjoe88, 427 阅读, 收藏,
摘要:
本文仅基于可重入的锁(ReentrantLock类)对AQS做分析,只考虑独占锁。 共享锁与独占锁的更多信息,以后再讨论。 AQS中队列的实现 节点Node AQS的节点包含了对前置节点的引用pre,后置节点的引用next,以及持有节点的线程thread. AQS的属性 CLH队列中只有tail节点 阅读全文
AQS(一) 对CLH队列的增强
2018-01-11 16:52 by faunjoe88, 933 阅读, 收藏,
摘要:
基本概念 AQS(AbstractQueuedSynchronizer),顾名思义,是一个抽象的队列同步器。 先进先出的等待队列 这个等待队列,是基于CLH锁实现的。 CLH锁是以发明人命名的自旋锁,这个锁是一个基于队列的自旋锁,是对SpinLock,TicketLock的进化。 具体可以参考另外一 阅读全文
SSH免密码登录Linux服务器
2018-01-04 18:27 by faunjoe88, 219 阅读, 收藏,
摘要:
一、如果本地没有创建ssh的秘钥对,则第一步需要先创建本地主机的ssh秘钥对 Linux或者MacOS可以直接用ssh-keygen命令在本地主机生成密钥对: 这个命令生成一个密钥对:id_rsa(私钥文件)和id_rsa.pub(公钥文件)。默认被保存在~/.ssh/目录下。 注:不要输入Ente 阅读全文
【转】不错的linux下通用的java程序启动脚本
2018-01-04 18:24 by faunjoe88, 215 阅读, 收藏,
摘要:
虽然写起动shell的频率非常不高。。。但是每次要写都要对付一大堆的jar文件路径,新加jar包也必须要修改起动shell。 在网上找到一个挺好的通用shell脚本。 只需要修改一些配置变量,就可以用来做起动脚本了。 并且除了能起动、还支持关闭、重启、查看是否正在运行的功能。 原文地址:http:/ 阅读全文
浙公网安备 33010602011771号