본문 바로가기

Java

Java Clone() package com.tistory.tazz009.reflection; public class MemberVO implements Cloneable { private String name; private String id; static { System.out.println("ready!!!"); } public MemberVO() { } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; } @Override protected Object c.. 더보기
Apache Commons-Collection Test_004 @SuppressWarnings("unchecked") @Test public void test_001() { // 1. List 선언 List list1 = new ArrayList(); // List가 비었는지 확인 boolean result1 = CollectionUtils.isEmpty(list1); assertThat(result1, is(true)); // 2. List에 객체 추가 list1.add(1); // List가 비었는지 확인 boolean result2 = CollectionUtils.isEmpty(list1); assertThat(result2, is(false)); // 3. List에 객체 추가 list1.add(2); list1.add(3); list1.add(4); lis.. 더보기
Singleton Pattern @Test public void test_001() { System.out.println("Start."); Singleton obj1 = Singleton.getInstance(); Singleton obj2 = Singleton.getInstance(); if (obj1 == obj2) { System.out.println("obj1과 obj2는 같은 인스턴스입니다."); } else { System.out.println("obj1과 obj2는 다른 인스턴스입니다."); } System.out.println("End."); } @Test public void test_002() { System.out.println("Start."); Singleton2 obj1 = Singleton2.getInsta.. 더보기
Template Pattern @Test public void test() { AbstractDisplay d1 = new CharDisplay('H'); AbstractDisplay d2 = new StringDisplay("Hello, world."); AbstractDisplay d3 = new StringDisplay("안녕하세요."); d1.display(); d2.display(); d3.display(); } package com.tistory.tazz009.pattern; public abstract class AbstractDisplay { public abstract void open(); public abstract void print(); public abstract void close(); public fina.. 더보기
자바에서 숫자 다루기 -Decimal @Test public void test_008() { // 1. 문자를 숫자로 바꿔 출력해보자. String str1 = "1,000"; BigDecimal dNum1; try { dNum1 = NumberUtils.createBigDecimal(str1); } catch (NumberFormatException nfe) { dNum1 = NumberUtils.createBigDecimal(StringUtils.remove(str1, ',')); } System.out.println("1,000 : " + dNum1); // 2. 나눠서 무한대로 나오면 ArithmeticException이 발생 String str2 = "1.0"; String str3 = ".3"; BigDecimal dNum2 = .. 더보기
Factory Pattern package com.tistory.tazz009.iterator; public abstract class Factory { public final Product create(String owner) { Product p = createProduct(owner); registerProduct(p); return p; } protected abstract Product createProduct(String owner); protected abstract void registerProduct(Product product); } package com.tistory.tazz009.iterator; public abstract class Product { public abstract void use(); } pa.. 더보기
Apache-commons-lang ArrayUtils test //@Test public void test_006() throws Exception { List list = new ArrayList(); list.add("aaa"); list.add("bbb"); list.add("ccc"); list.add("ddd"); String [] array = new String[list.size()]; array = list.toArray(array); for (String str : array) { System.out.println(str); } //aaa //bbb //ccc //ddd } //@Test public void test_005() throws Exception { String[] array = ArrayUtils.toArray("aaa", "bbb",.. 더보기
Java reflection Test package com.tistory.tazz009.reflection; public class MemberVO { private String name; private String id; static { System.out.println("ready!!!"); } public MemberVO() { } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; } @Override public String toString() { return "Memb.. 더보기
Adapter Pattern - 01 상속을 사용한 Adapter 패턴 /** * 상속을 사용한 Adapter 패턴 * @throws Exception */ @Test public void adapterPatternTest_001() throws Exception { Print p = new PrinterBanner("Hello"); p.printWeak(); p.printStrong(); } package com.tistory.tazz009.pattern; public class Banner { private String string; public Banner(String string) { this.string = string; } public void showWithParen() { System.out.println("(" + strin.. 더보기
Iterator Pattern package com.tistory.tazz009.iterator; public interface Iterator { public boolean hasNext(); public Object next(); } package com.tistory.tazz009.iterator; public interface Aggregate { public Iterator iterator(); } package com.tistory.tazz009.iterator; public class Book { private String name; public Book() { } public Book(String name) { this.name = name; } public String getName() { return name; } .. 더보기