Java
互联网的搬运工
我不写博客,我只是互联网的搬运工!
展开
-
Eclipse中Java的一些常用快捷键
Ctrl + Shift + / 以 /* */ 变为注释Ctrl + Shift + / Ctrl + Shift + \ 取消注释Ctrl + / 以 // 形式 添加 取消注释Ctrl + 1 快原创 2011-12-24 21:53:03 · 403 阅读 · 0 评论 -
Java之异常与错误的区别及java的异常体系
[导读]异常: 在Java中程序的错误主要是语法错误和语义错误,一个程序在编译和运行时出现的错误我们统一称之为异常,它是VM(虚拟机)通知你的一种方式,通过这种方式,VM让你知道,你(开发人员)已经犯了个错误,现在有一个机会来修改它。异常和错误的区别异常: 在Java中程序的错误主要是语法错误和语义错误,一个程序在编译和运行时出现的错误我们统一称之为异常,它是VM(虚拟机)通知你的转载 2012-04-21 14:43:54 · 454 阅读 · 0 评论 -
Java 理论与实践: 正确使用 Volatile 变量
Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized ”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是 synchronized 的一部分。本文介绍了几种有效使用 volatile 变量的模式,并强调了几种不适合使用 volatile 变量的情形。 锁提供转载 2012-04-20 20:33:07 · 447 阅读 · 0 评论 -
java Singleton 几种方式解析
概念:在Java应用程序中,一个类Class只有一个实例存在运用:1)系统资源,如文件路径,数据库链接,系统常量等2)全局状态化类,类似AutomicInteger的使用优缺点:1)节省内存有利于垃圾回收2)只能使用在特定的环境下,受限制于JVM和容器 单例作用范围的前提是在一个ClassLoad下。所以像分布式应用EJB就要转载 2012-04-20 20:29:39 · 6625 阅读 · 0 评论 -
Java Singleton的5种实现
/** * 一、懒汉,常用的写法 */class LazySingleton{ private static LazySingleton singleton; private LazySingleton(){ } public static LazySingleton getInstance(){ if(singleton==null){转载 2012-05-04 11:01:22 · 427 阅读 · 0 评论 -
Java类加载机制
http://onjava.com/pub/a/onjava/2005/01/26/classloading.html?page=1 这是英文原文http://blog.csdn.net/skiof007/article/details/6152772 这是翻译的原创 2012-05-03 21:14:10 · 472 阅读 · 0 评论 -
java的HashCode方法
有许多人学了很长时间的Java,但一直不明白hashCode方法的作用, 我来解释一下吧。首先,想要明白hashCode的作用,你必须要先知道Java中的集合。 总的来说,Java中的集合(Collection)有两类,一类是List,再有一类是Set。 你知道它们的区别吗?前者集合内的元素是有序的,元素可以重复;后者元素无序,但元素不可重复。 那么这里就有一个比较严重的问题了转载 2012-05-02 16:11:14 · 346 阅读 · 0 评论 -
Java 文件读写
http://blog.csdn.net/smartcat86/article/details/4085739http://blog.csdn.net/Touch_2011/article/details/6853871原创 2012-04-01 11:22:16 · 326 阅读 · 0 评论 -
JVM内存模型以及垃圾收集策略解析
一 JVM内存模型1.1 Java栈Java栈是与每一个线程关联的,JVM在创建每一个线程的时候,会分配一定的栈空间给线程。它主要用来存储线程执行过程中的局部变量,方法的返回值,以及方法调用上下文。栈空间随着线程的终止而释放。StackOverflowError:如果在线程执行的过程中,栈空间不够用,那么JVM就会抛出此异常,这种情况一般是死递归造成的。1.2 堆转载 2012-03-09 16:10:25 · 498 阅读 · 0 评论 -
Java volatile and transient
Volatile修饰的成员变量在每次被线程访问时,都强迫从主内存中重读该成员变量的值。而且,当成员变量发生变化时,强迫线程将变化值回写到主内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。 Java语言规范中指出:为了获得最佳速度,允许线程保存共享成员变量的私有拷贝,而且只当线程进入或者离开同步代码块时才与共享成员变量的原始值对比。 这转载 2012-05-23 16:24:50 · 412 阅读 · 0 评论