본문 바로가기

WEB51

제네릭 타입(Generic Type) (Java) 제네릭결정되지 않은 타입을 파라미터로 처리하고, 실제 사용 시 파라미터를 구체적인 타입으로 대체시키는 기능Object 타입은 어떤 객체든 다 담을 수 있지만 이후 활용하기 위해 형변환을 해야함타입을 강제: 컴파일 단계에서 사전에 에러 차단타입 재정의: 형변환 불필요제한된 타입 파라미터 / 와일드카드public class C { public T content;}Box 클래스@Getter @Setterpublic class Box { public X content;}GenericEx 클래스public class GenericEx { public static void main(String[] args) { List list = new ArrayList(); // Lis.. 2024. 7. 18.
어노테이션(Annotation) (Java) 어노테이션@AnnotationName: 클래스 또는 인터페이스를 컴파일하거나 실행할 때 어떻게 처리해야 할 것인지 알려주는 설정 정보컴파일 시 사용하는 정보 전달 (예: @Override)빌드 툴이 코드를 자동으로 생성할 때 사용하는 정보 전달 (예: lombok)실행 시 특정 기능을 처리할 때 사용하는 정보 전달아무런 동작을 하지 않고 그냥 컴파일 시 설정 정보 만을 전달함어노테이션 정의어노테이션 정의하기public @interface AnnotationName{ String prop1(); // 속성 타입과 속성명 int prop2() default 1; // default 뒤에 쓰면 기본값(어노테이션 사용시 생략 가능)}// => @AnnotationName(prop1 = "~~~", p.. 2024. 7. 18.
Wrapper, Math, DecimalFormat, 정규표현식Pattern, getClass (Java) wrapper 클래스기본 자료형을 클래스로 만들어 놓은 것포장하고 있는 기본 타입의 값을 변경할 수는 없고, 객체를 생성하는 목적으로 사용Boxing: wrapper 객체로 만드는 과정Unboxing: wrapper 객체에서 기본 타입 값을 얻어내는 과정Integer obj = 100; // auto boxingint value = obj; // unboxingint value = obj + 50; // unboxing 후 연산 parse+기본타입 : 문자열을 기본 타입으로 변환할 때 사용String.valueOf(기본타입) : 기본타입을 문자열로 변환할 때 사용3 + "" : 빈 문자열 더해줘도 문자열 변환 가능포장 객체는 번지로 비교를 하기 때문에 ==, !=로 내용 비교 불가능Math 클래스자바에서.. 2024. 7. 18.
String, StringBuilder, StringTokenizer (Java) 문자열 클래스String문자열 빈칸 , null, 공백 비교하기// 빈칸 null 공백 비교하기 // a와 b와 c 모두 다름 String a = ""; String b = null; String c = " ";문자열 인코딩과 디코딩(UTF-8, EUC-KR) → 잘 안씀// byte 배열 문자열 (기본은 UTF-8) String data = "문자열";byte\[\] arr1 = data.getBytes(); // UTF-8 인코딩 String str = new String(byte\[\] bytes); // byte배열 -> String: UTF-8 디코딩byte\[\] arr2 = data.getBytes(); // EUC-KR 인코딩 String str2 = new String(byte\[\.. 2024. 7. 18.