随笔分类 - Java
摘要:参考文章: http://www.cnblogs.com/xingele0917/p/3695636.html 1. 集合框架 Collection Map 2. 集合比较 接口 实现类 保持插入顺序 可重复 排序 使用说明 List ArrayList Y Y N 长于随机访问元素;但插入、删除元
阅读全文
摘要:Java最初是作为网络编程语言出现的,Java Socket可以实现网络上两个程序之间的数据交换,QQ等即时通讯软件都使用了Socket相关技术。Java.net包中提供了网络编程相关的四大功能类:InetAddress、URL、Sockets、Datagram。 一、InetAddress Ine
阅读全文
摘要:企业级应用开发中经常会遇到以下问题,可以使用工具对JVM进行监管,以便及时查找问题所在。 内存不足OutOfMemory(大对象没有gc等),内存泄露; 线程死锁,线程数过多; 锁争用(Lock Contention),资源未及时释放(数据库); Java进程CPU消耗过高. 一、Java自带工具
阅读全文
摘要:Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。使用反射Java程序可以加载一个运行时才得知名称的class,获悉其完整构造。 反射机制主要提供了以
阅读全文
摘要:1、可变与不可变 String中保存的是字符串常量,字符数组定义为final类型的,因此String对象是不可变的。 private final char value[]; StringBuffer和StringBuilder都继承同一个抽象类AbstractStringBuilder,该父类中使用
阅读全文
摘要:Java使用补码来表示二进制数, 在计算机运算的时候, 都是以补码的方式来运算。在补码表示中,最高位为符号位,正数的符号位为0,负数为1。补码的规定如下: · 对正数来说,最高位为0,其余各位代表数值本身(以二进制表示)。正数的原码、反码、补码都一样。 · 对负数而言,把该数绝对值的补码按位取反,然
阅读全文
摘要:1. Java相对路径 InputStream in = new FileInputStream(new File("src/com/sa/test/a.txt")); InputStream in = Test.class.getResourceAsStream("/com/sa/test/a.t
阅读全文
摘要:1. 概念 enum的全称为 enumeration, 是 JDK 1.5 中引入的新特性。枚举可以集中统一地管理项目中的常量,通常用来表示错误码,状态机等。我们有时候会用 public static final来定义某种状态,枚举与之不同的是可以将各种状态值进行分类,只有同一类型的值才能比较,进而
阅读全文
摘要:Java中的异常处理可以提高系统的健壮性以及用户体验。Throwable是所有异常和错误的父类,其继承结构如下: a) Unchecked Exception 非检查异常不要求程序员捕获,且可以由系统自动抛出, 如除法运算中除数为0时,程序自动抛出ArithmeticException的算术异常,而
阅读全文
摘要:当向Set集合中插入对象时,如何判别在集合中是否已经存在该对象。如果采用equals方法对元素逐一进行比较,这样的做法较为耗时。可以先判断hashcode值,HashMap中用一个table保存已经存进去的对象的hashcode值,如果table中没有该hashcode值,它就可以直接存进去;如果存
阅读全文
摘要:程序中都是以流的形式进行数据的传输和保存,在java.io包中数据流操作的两大类是字节流和字符流。 1. 字节流 InputStream和OutputStream是所有表示字节流的类的父类,它们都是抽象类,不能实例化。 InputStream抽象类方法: public int read(byte b
阅读全文
摘要:对象序列化的目标是将对象保存在磁盘中或者在网络中进行传输。实现的机制是允许将对象转为与平台无关的二进制流。java中对象的序列化机制是将允许对象转为字节序列。这些字节序列可以使Java对象脱离程序存在,从而可以保存在磁盘上,也可以在网络间传输。对象的序列化是将一个Java对象写入IO流;与此对应的,
阅读全文
摘要:synchronized(this){ if(service == null){ // 防止多线程同时进入,生成多个对象 service = new ServiceImpl(); } } 4.ClassPathXmlApplicationContext Tomcat启动时第一次初始化配置文件,使用C
阅读全文