본문 바로가기

728x90
반응형

BackEnd/Java

[java] 이것이 자바다 ch12 어노테이션(annotation) 1. 어노테이션 ▷ 코드에서 @으로 작성되는 요소 ▶ 클래스 또는 인터페이스를 컴파일하거나 실행할 때 어떻게 처리해야 할 것인지를 알려주는 설정 정보 ▷ ① 컴파일시 사용하는 정보 전달 ▷ ② 빌드 툴이 코드를 자동으로 생성할 때 사용하는 정보 전달 ▷ ③ 실행 시 특정 기능을 처리할 때 사용하는 정보 전달 2. 어노테이션 타입 정의와 적용 ▷ @interface 뒤에 사용할 어노테이션 이름 작성 public @interface AnnotationName{ // 정보전달할 값 정의; } @AnnotationName 3. 어노테이션 적용 대상 ▷ 어노테이션을 적용할 수 있는 대상의 종류는 ElementType 열거 상수로 정의 ▷ @Target 어노테이션으로 적용 대상 지정. @Target의 기본 속성 v.. 더보기
[java] 이것이 자바다 ch12 리플렉션(reflection) 1. 리플렉션 ▷ Class 객체로 관리하는 클래스와 인터페이스의 메타 정보를 프로그램에서 읽고 수정하는 것 ▷ 메타 정보 : 패키지 정보, 타입 정보, 멤버(생성자, 필드, 메소드) 정보 1. 클래스로부터 얻는 방법 ▷ Class clazz = 클래스이름.class; ▷ Class clazz = Class.forName("패키지...클래스이름"); 2. 객체로부터 얻는 방법 ▷ Class clazz = 객체참조변수.getClass(); ◎ 리플렉션 예제 ◎ Car 클래스 public class Car { }​ ◎ GetClassExample 메인 클래스 public class GetClassExample { public static void main(String[] args) throws Excepti.. 더보기
[java] 이것이 자바다 ch12 정규 표현식 클래스 1. 정규 표현식 ▷ 문자 또는 숫자와 관련된 표현과 반복 기호가 결합된 문자열 NO 표현 및 기호 설명 1 [ ] 한 개의 문자 [ abc] a, b, c 중 하나의 문자 [^abc] a, b, c 이외의 하나의 문자 [a-zA-Z] a~z, A~Z 중 하나의 문자 2 \d 한 개의 숫자, [0-9]와 동일 3 \s 공백 4 \w 한 개의 알파벳 또는 한 개의 숫자, [a-zA-Z_0-9]와 동일 5 \. . 6 . 모든 문자 중 한 개의 문자 7 ? 없음 또는 한 개 8 * 없음 또는 한 개 이상 9 + 한 개 이상 10 {n} 정확히 n개 11 {n,} 최소한 n개 12 {n, m} n개부터 m개까지 13 a | b a 또는 b 14 ( ) 그룹핑 2. Pattern 클래스로 검증 ▷ java.ut.. 더보기
[java] 이것이 자바다 ch12 날짜와 시간 클래스 1. Date 클래스 ▷ 날짜를 표현하는 클래스로 객체 간에 날짜 정보를 주고받을 때 사용합니다. ▷ Date() 생성자는 컴퓨터의 현재 날짜를 읽어 Date 객체로 만듭니다. Date now = new Date(); NO 클래스 설명 1 Date 날짜 정보를 전달하기 위해 사용 2 Calendar 다양한 시간대별로 날짜와 시간을 얻을 때 사용 3 LocalDateTime 날짜와 시간을 조작할 때 사용 ◎ Date 클래스 사용 예제 import java.text.*; import java.util.*; public class DateExample { public static void main(String[] args) { Date now = new Date(); String strNow1 = now.to.. 더보기
[java] 이것이 자바다 ch12 수학(Math) 클래스 1. Math 클래스 ▷ 수학 계산에 사용할 수 있는 정적 메소드를 제공합니다. NO 구분 코드 리턴값 1 절대값(abs) int v1 =Math.abs(-5); double v2 = Math.abs(-3.14); v1 = 5 v2 = 3.14 2 올림값(ceil) double v3 = Math.ceil(5.3); double v4 = Math.ceil(-5.3); v3 = 6.0 v4 = -5.0 3 버림값(floor) double v5 = Math.floor(5.3); double v6 = Math.floor(-5.3); v5 = 5.0 v6 = -6.0 4 최대값(max) int v7 =Math.max(5, 9); double v8 = Math.max(5.3, 2.5); v7 = 9 v8 = 5.3.. 더보기
[java] 이것이 자바다 ch12 포장 클래스 1. 포장 객체 ▷ 기본 타입(byte, char, short, int, long, float, double, boolean)의 값을 갖는 객체 ▷ 포장하고 있는 기본 타입의 값을 변경할 수 없고, 단지 객체로 생성하는 목적 NO 기본 타입 포장 클래스 1 byte Byte 2 char Character 3 short Short 4 int Integer 5 long Long 6 float Float 7 double Double 8 boolean Boolean 2. 박싱과 언박싱 ▷ 박싱 : 기본 타입 값을 포장 객체로 만드는 과정, 포장 클래스 변수에 기본 타입 값이 대입 시 발생 ▷ 언박싱 : 포장 객체에서 기본 타입 값을 얻어내는 과정, 기본 타입 변수에 포장 객체가 대입 시 발생 Integer ob.. 더보기
[java] 이것이 자바다 ch12 문자열 클래스 1. String ▷ 문자열을 저장하고 조작할 때 사용합니다. ▷ 문자열 리터럴은 자동으로 String 객체로 생성합니다. String 클래스의 다양한 생성자를 이용해서 직접 객체를 생성할 수도 있습니다. ▷ 한글 1자를 UTF-8로 인코딩하면 3바이트가 되고, EUC-KR로 인코딩하면 2바이트가 됩니다. import java.util.Arrays; public class BytesToStringExample { public static void main(String[] args) throws Exception{ String data = "자바"; // String → byte 배열 (기본 : UTF-8 인코딩) byte[] arr1 = data.getBytes(); // byte[] arr1 = dat.. 더보기
[java] 이것이 자바다 ch12 System 클래스 1. System 클래스 ▷ System 클래스의 정적 static 필드와 메소드를 이용하면 프로그램 종료, 키보드 입력, 콘솔(모니터) 출력, 현재 시간 읽기, 시스템 프로퍼티 읽기 등이 가능합니다. ◎ 정적 멤버 NO 정적 멤버 용도 1 필드 out 콘솔(모니터)에 문자 출력 2 err 콘솔(모니터)에 에러 내용 출력 3 in 키보드 입력 4 메소드 exit(int status) 프로세스 종료 5 currentTimeMillis() 현재 시간을 밀리초 단위의 long 값으로 리턴 6 nanoTime() 현재 시간을 나노초 단위의 long 값으로 리턴 7 getProperty() 운영체제와 사용자 정보 제공 8 getenv() 운영체제의 환경 변수 정보 제공 (1) 콘솔 출력 public class E.. 더보기

728x90
반응형