ITEM 4: Private Constructor
// Utilμ΄μ§λ§ μμ±μκ° μμ
public class ImageUtility {
private static String IMAGE_DATE_FORMAT = "yyyyMMddHHmm";
public static String makeImageFileNm(String imgFileNm) {
return imgFileNm + "_" + new SimpleDateFormat(IMAGE_DATE_FORMAT).format(new Date());
}
}μμ±μλ₯Ό λͺ μνμ§ μμΌλ©΄ μ»΄νμΌλ¬κ° μλμΌλ‘ λ§€κ°λ³μλ₯Ό λ°μ§ μλ public μμ±μλ₯Ό λ§λ λ€. μ΄λ μ¬μ©μλ μ΄ μμ±μκ° μλμΌλ‘ μμ±λ κ²μΈμ§ ꡬλΆν μ μμΌλ©°,
// λ€μκ³Ό κ°μ΄ μ¬μ©νκΈ°λ₯Ό λ°λ¬μΌλ,
ImageUtility.makeImageFileNm("test", ".png");
// μμ±μλ₯Ό μμ±ν΄μ μ¬μ©ν μλ μμ
ImageUtility imageUtility = new ImageUtility();
String imageFileNm = imageUtility.makeImageFileNm("test", ".png");μ΄μ²λΌ μλμΉ μκ² μΈμ€ν΄μ€νν μ μκ²λ ν΄λμ€λ€λ λ°μνλ€.
// Utilμ΄μ§λ§ μμ±μκ° μμ
abstract class ImageUtility {
private static String IMAGE_DATE_FORMAT = "yyyyMMddHHmm";
public static String makeImageFileNm(String imgFileNm) {
return imgFileNm + "_" + new SimpleDateFormat(IMAGE_DATE_FORMAT).format(new Date());
}
}μΆμ ν΄λμ€λ‘ λ§λλ κ²μΌλ‘λ μΈμ€ν΄μ€νλ₯Ό λ§μ μ μμΌλ©°, private μμ±μλ₯Ό μΆκ°νλ©΄ ν΄λμ€μ μΈμ€ν΄μ€νλ₯Ό λ§μ μ μλ€.
private μμ±μμ΄λ―λ‘ ν΄λμ€ μΈλΆμμλ μ κ·Όν μ μμΌλ©°, λ΄λΆμμ μ€μλ‘ μμ±μλ₯Ό νΈμΆνλ κ²½μ°μ λμνκΈ° μν΄ AssrtionError μμΈμ²λ¦¬λ₯Ό νλ€. νμ§λ§, μμ±μκ° μλλ° νΈμΆν μ μλ κ²μ μ§κ΄μ μ΄μ§ μμΌλ―λ‘, μ μ ν μ£Όμμ λ€λ κ²μ κΆμ₯νλ€.
λν, private μμ±μλ μμλ λΆκ°λ₯νλ€. λͺ¨λ μμ±μλ μμ ν΄λμ€μ μμ±μλ₯Ό νΈμΆνκ² λλλ°, μ΄λ₯Ό private μ μΈμΌλ‘ νμν΄λμ€κ° μμ ν΄λμ€μ μμ±μμ μ κ·Όμ λͺ»ν΄ μμμ΄ λΆκ°λ₯νλ€.
μ¬μ©λλ Utility
java.util.Arrays
java.util.ArraysμΈμ€ν΄μ€νλ₯Ό νμ§ μκΈ° μν΄ private μμ±μλ₯Ό μ μΈν κ²μ λ³Ό μ μμΌλ©°, λ°°μ΄ κ΄λ ¨ λ©μλλ€μ λͺ¨μ λλμλ€.
java.lang.Math
java.lang.MathMathμ λν κΈ°λ³Έ νμ (PI, E)μ΄λ κ΄λ ¨ λ©μλλ€μ λͺ¨μλμλ€.
java.util.Collection
java.util.CollectionνΉμ μΈν°νμ΄μ€λ₯΄ ꡬννλ κ°μ²΄λ₯Ό μμ±ν΄μ£Όλ μ μ λ©μλ(ν©ν°λ¦¬)λ₯Ό λͺ¨μλμ μ μλ€. (java8λΆν° μ΄λ° λ©μλλ₯Ό μΈν°νμ΄μ€μ λ£μ μ μμ)
final ν΄λμ€μ κ΄λ ¨ λ©μλ
final classλ₯Ό μμν΄μ νμ ν΄λμ€μ λ©μλλ₯Ό λ£λ κ²μ λΆκ°λ₯νλ―λ‘, final ν΄λμ€μ κ΄λ ¨ λ©μλλ€μ λͺ¨μλμλλ μ¬μ©νλ€.
Last updated
Was this helpful?