随笔分类 - Java基础
摘要:单例模式算是设计模式中最容易理解,也是最容易手写代码的模式了吧。但是其中的坑却不少,所以也常作为面试题来考。本文主要对几种单例写法的整理,并分析其优缺点。很多都是一些老生常谈的问题,但如果你不知道如何创建一个线程安全的单例,不知道什么是双检锁,那这篇文章可能会帮助到你。懒汉式,线程不安全当被问到要实...
阅读全文
摘要:作者:禅楼望月(http://www.cnblogs.com/yaoyinglong) 本文主要记录一些JVM指令,便于记忆与查阅。 一、未归类系列A 此系列暂未归类。 指令码 助记符 说明 0x00 nop 什么都不做 0x01 acons...
阅读全文
摘要:魔数;版本号;常量池;类或接口访问标志;类索引、父类索引与接口索引集合;字段表集合;方法表集合;属性表集合;Code属性;LocalVariableTable;Signature 属性
阅读全文
摘要:主要介绍:Java的Class对象,反射机制和动态代理机制
阅读全文
摘要:主要讲述使用clone进行对象的深度拷贝和利用序列化进行对象的深度拷贝
阅读全文
摘要:1.定义 正则表达式是用来进行文本处理的技术,是语言无关的,在几乎所有语言中都有实现。 一个正则表达式就是由普通字符以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。就像通配符“*.jpg”、“%ab%”,它是对字符串进行匹配的特殊字符串。 2.语法 2.1元字符 要想学会正则表达式,理解元...
阅读全文
摘要:在接口中实现内部类可以使该接口的所有实现所共用。 public interface BaseInter { public void f1(); public void f2(); class BaseImp implements BaseInter{ @Override public void f1() { ...
阅读全文
摘要:注:问题已解决。子类继承了父类所有的变量与方法,只是JVM设置了访问权限,不让你使用罢了。首先来看看下面这段代码:public class Base { private int i=5; public Base(){ System.out.println("I come f...
阅读全文
摘要:作者:禅楼望月(http://www.cnblogs.com/yaoyinglong)更新:其实这里有好多的变戏法,只要你理解了他们在JVM的中的实现机制,就豁然开朗了。有时间我会把这些变戏法的东西说明的。Java 向程序员许下了美好的承诺:无需关心内存的回收,Java提供了优秀的垃圾回收机制来回收...
阅读全文
摘要:作者:禅楼望月(http://www.cnblogs.com/yaoyinglong/) 静态的Java数组 Java语言是典型的静态语言,因而,数组也是静态的,即当该数组被初始化之后,该数组的长度是不可变的。 java 语言的数组变量是引用类型,什么意思呢?意思就是,数组变量并不是数组本身,它只是指向堆内存中的数组对象。如: 这3个变量以及各自引用的数组在内存中...
阅读全文
摘要:作者:禅楼望月(http://www.cnblogs.com/yaoyinglong/) 字符串的陷阱 Java程序创建对象常见的方式有: new; 通过Class对象的newInstance()方法调用构造函数创建Java对象; 反序列化; clone()方法。 此外,基本类型以及基本类的包装类、字符串还可以以直接量的方式来创建Java对象。如: String str="hello world...
阅读全文
摘要:正确关闭资源的方式 ①使用finally块来关闭物理资源。 ②关闭物理资源时,首先保证引用资源的变量不为null ③每个物理资源时都应该使用单独的try-catch块来关闭资源,保证关闭资源时引发的异常不会影响其他资源的关闭。 finally的陷阱 System.exit(0); 在try中使用了System.exit(0);语句,将停止当前线程和所有其他当场死亡的线程。catch和fin...
阅读全文
摘要:Integer类Integer 类在对象中包装了一个基本类型 int 的值。Integer 类型的对象包含一个 int 类型的字段。 此外,该类提供了多个方法,能在 int 类型和 String 类型之间互相转换,还提供了处理 int 类型时非常有用的其他一些常量和方法。Integer i = 1...
阅读全文
摘要:注:我已对本文章进行了更新,劳烦移步。java语言是典型的静态语言,因而,数组也是静态的,即当该数组被初始化之后,该数组的长度是不可变的。java 语言的数组变量是引用类型,什么意思呢?意思就是,数组变量并不是数组本身,它只是指堆向内存中的数组对象。如:这3个变量以及各自引用的数组在内存中的分配如图...
阅读全文