JavaSE
文章平均质量分 74
davyjones2010
生活在这个世界而不知其义,如同徜徉于一座伟大的图书馆而不碰书籍。
展开
-
Java SE: Reflection Introduction (RTTI)
1. Get Class object (Three possible ways) 1) Using Class.forName(className). The static method of Class classpackage edu.xmu.service;import org.junit.Test;public class UserService...原创 2013-04-16 11:34:18 · 109 阅读 · 0 评论 -
Java Dynamic Proxy
1) Act as a simple log interceptor:public class DynamicProxy { private static final Logger logger = Logger.getLogger(DynamicProxy.class); @SuppressWarnings("unchecked") @Test public void u...原创 2015-01-06 15:09:30 · 177 阅读 · 0 评论 -
Java SE: Bitwise and Bit Shift Operations
1. Java provides operators to perform bitwise and bit shift operations on int type. The operators discussed in the section are less commonly used, the intent is to simply make you aware that th...原创 2014-07-30 22:12:46 · 198 阅读 · 0 评论 -
Java SE: hashCode() & equals() and HashMap
1. Both hashCode() and equals() are defined in Object:public native int hashCode();public boolean equals(Object obj) { return (this == obj);} If our customized object doesn't override...原创 2014-08-15 17:34:02 · 159 阅读 · 0 评论 -
Java SE: Tips
1. How to compare equals for two List: 1> Writing boiler plate code 2> Use org.apache.commons.collections.ListUtils.isEqualList() Benefit: Help us handle boiler plate code ...原创 2014-08-28 09:41:02 · 200 阅读 · 0 评论 -
Java SE: Effective Java Notes "Methods"
Effective Java 2nd Edition, Chapter 7, Item 42Be careful when using var args. Do not abuse var args in our custmoized methods.1) Painful Arrays.asList for Primitive Typespackage edu.xmu.guava.c...2014-08-28 19:35:53 · 151 阅读 · 0 评论 -
Java SE: How to iterate Stack
How to iterate a stack in Java? 1> Pitfall: Using iterator to iterate Stack@Testpublic void iterateTest() { Stack<String> stack = new Stack<String>(); stack.push("I...原创 2014-09-02 22:03:28 · 174 阅读 · 0 评论 -
Java Concurrency: Latches & Barriers
Latches: A latch is a synchronizer that can delay the process of threads until it reaches its terminal state. A latch acts as a gate: until the latch reaches the terminal state the gate is...原创 2014-09-03 22:45:15 · 197 阅读 · 0 评论 -
Java Concurrency: JCIP Notes
1. Risks of Threads: 1> Safety Hazards We can add annotation: @NotThreadSafe, @ThreadSafe, @Immutable 2> Liveness Hazards Deadlock, Starvation, Livelock ...原创 2014-09-12 09:31:50 · 208 阅读 · 0 评论 -
Java SE: Effective Java Notes "Concurrency"
Use the Advanced Concurrent Tools instead of the legacy wait() and notify().Java Advanced Concurrent Tools: 1> Executor Framework: ExecutorService, Callable, Executors ... 2> Concu...原创 2014-09-12 15:33:12 · 171 阅读 · 0 评论 -
Java Concurrency: Java Memory Model
1. Happen Before Operation: 1) Each action in a thread happens before every action in that thread that comes later in the program's order. 2) An unlock on a monitor happens before every sub...原创 2014-09-20 20:51:35 · 157 阅读 · 0 评论 -
Java Concurrency: Cancellation and Shutdown
Dealing well with failure, shutdown, and cancellation is one of the characteristics that distinguishes a well-behaved application from one that merely works. 1> Task Cancellation: An ac...原创 2014-09-21 21:54:49 · 231 阅读 · 0 评论 -
错误收集
1. Debug无法开启: ERROR:transport error 202: gethostbyname: unknown hostA configuration error occurred during startup. Please verify the preference field with the prompt: ERROR: transport error 20...2016-07-21 10:34:38 · 234 阅读 · 0 评论 -
SCJP
1> Wrapper 1) Boxing, ==, and equals()public class WrapperTest { @Test public void integerEqualsTest() { assertFalse(new Integer(127) == new Integer(127)); assertTrue((new Int...原创 2014-12-26 09:58:09 · 277 阅读 · 0 评论 -
Java SE: How to Decompress File (.zip)
import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.util.ArrayList;import java.util.List;...2014-07-11 17:07:04 · 220 阅读 · 0 评论 -
Java: Primitive Types
Primitive Types:1) byte: size: 8-Bit = 1-Byte range: -128~+127 usage: 1> The byte data type can be useful for saving memory in large arrays, where memory saving actually...原创 2014-07-06 22:19:18 · 173 阅读 · 0 评论 -
Java SE: How to Use Java Mail to send e-mail
1. Precondition 1) Import mail-1.4.1.jar for basic javax.mail api which can be found here http://www.oracle.com/technetwork/java/javamail/index-138643.html 2) Import greenmail-1.3...原创 2013-04-25 18:17:04 · 1244 阅读 · 0 评论 -
Java SE: A simple example of Tree
1. TreeOriginalNode.javapackage edu.xmu.tree;public class TreeOriginalNode{ private String attr1; private String attr2; private String attr3; private int total; public String ge...原创 2013-05-10 08:17:06 · 94 阅读 · 0 评论 -
Java SE: A Tip for Joining Two Table Together in Java
1. Requirement Specification 1) After we have loading data from two different file, and then assembly them into two different kind of JavaBean. 2) We want to join the two list of JavaBean t...原创 2013-05-15 14:28:54 · 165 阅读 · 0 评论 -
Java Concurrency: Thread Introduction
1) Sleeppackage edu.xmu.thread;public class SleepTest{ public static void main(String[] args) { Thread thread1 = new Thread(new MyRunnable()); Thread thread2 = ne...原创 2014-05-14 10:46:34 · 130 阅读 · 0 评论 -
Java Concurrency: ExecutorService Introduction
1) Difference between Callable and Runnable The Callable interface is similar to Runnable, in that both are designed for classes whose instances are potentially executed by another thread. A R...原创 2014-05-14 17:24:36 · 148 阅读 · 0 评论 -
Java SE: How to compress File(.zip)
1. Main Functionimport java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.util.Collection;import java.util.zip.ZipEntry;...原创 2014-05-15 11:45:17 · 189 阅读 · 0 评论 -
Java SE: Inner Class
1) Why would we use InnserClass? 1> Inner class methods can access the data from the scope in which they are defined - including data that would otherwise be private. 2> Inner classe...原创 2014-05-23 15:22:07 · 126 阅读 · 0 评论 -
JavaSE: Producers&Consumers By Using BlockingQueue
1) BlockingQueue Intro A queue is a data structure with two fundamental operations: to add an element to the tail of the queue and remove an element from the head. That is, the queue fol...原创 2014-05-27 10:03:13 · 168 阅读 · 0 评论 -
Java SE: Reader&Writer Using ReadLock&WriteLock
1) Reader&Writer Problem Intro 1> Reader&Writer task may share a resource, say a DB. 2> Many Reader may access a DB without fear of data corruption. 3> Only one Writer...2014-05-27 11:12:16 · 144 阅读 · 0 评论 -
Java Concurrency: Thread&Locks
Synchronized & ReentrantLock 1) Basic Thread Operations 1) void notifyAll() 1> unblocks the threads that called wait on this object. 2> This method can only be...原创 2014-05-27 15:19:10 · 162 阅读 · 0 评论 -
Java SE: String.replaceAll() with special character "$"
1. Problem Description: When replacement contains "$", either IllegalArgumentException or StringIndexOutOfBoundsException will be thrown. The reason is that replaceAll() is not simply char...原创 2014-06-03 10:55:10 · 203 阅读 · 0 评论 -
Java SE: Concurrency Utils DelayQueue
1) DelayQueue class implements the BlockingQueue interface. The DelayQueue keeps the elements internally until a certain delay has expired. The elements must implement the interface java.u...原创 2014-06-09 16:42:34 · 150 阅读 · 0 评论 -
Why do we need SerialVersionUID?
A good resource to refer to: http://www.mkyong.com/java-best-practices/understand-the-serialversionuid/原创 2014-04-28 15:32:40 · 133 阅读 · 0 评论