본문 바로가기

전체보기

(91)
6. Java 자바 [API] - Class 클래스 Class 클래스 자바는 클래스와 인터페이스의 메타 데이터를 java.lang 패키지에 소속된 Class 클래스로 관리한다. 메타 데이터 : 클래스의 이름, 생성자 정보, 필드 정보, 메소드 정보를 말한다. Class 클래스의 메소드들 1. Class 객체 얻기 getClass(), forName() 프로그램에서 Class 객체를 얻기 위해서는 Object 클래스가 가지고 있는 getClass() 메소드를 이용한다. Object 는 모든 클래스의 최상위 클래스이므로 모든 클래스에서 getClass() 메소드를 호출할 수 있다. Class clazz = obj.getClass(); getClass() 메소드는 해당 클래스로 객체를 생성했을 때만 사용할 수 있는데, 객체를 생성하기 전에 직접 Class 객체..
5. Java 자바 [API] - System 클래스 System 클래스 바 프로그램은 운영체제 상에서 바로 실행되는 것이 아니라 JVM 위에서 실행된다. 따라서 운영체제의 모든 기능을 자바 코드로 직접 접근하기 어렵다. 하지만, java.lang 패키지에 속하는 System 클래스를 활용하면 운영체제의 일부 기능을 이용할 수 있다. 프로그램 종료, 키보드로 부터 입력, 모니터로 출력, 메모리 정리, 현재 시간 읽기, 시스템 프로퍼티 읽기, 환경 변수 읽기 등이 가능하다. System 클래스의 모든 필드와 메소드는 정적(static) 필드와 정적(static)메소드로 구성되어 있다. System 클래스의 메소드들 1. 프로그램 종료 exit() 강제적으로 JVM을 종료시킬 필요가 있을 때 exit() 메소드를 호출한다. exit() 메소드는 현재 실행하고 ..
4. Java 자바 [API] - Objects 클래스 Objects 클래스 Object 와 유사한 이름을 가진 java.util.Objects 클래스는 객체 비교, 해시 코드 생성, null 여부, 객체 문자열 리턴 등의 연산을 수행하는 정적 메소드들로 구성된 Object 클래스의 유틸리티 클래스이다. Objects 클래스의 정적(static) 메소드들 리턴 타입 메소드(매개 변수) 설명 int compare(T a, T b, Comparator c) 두 객체 a, b를 Comparator 를 사용해서 비교 boolean deepEquals(Object a, Object b) 두 객체의 깊은 비교(배열의 항목까지 비교) boolean equals(Object a, Object b) 두 객체의 얕은 비교(번지 값만 비교) int hash(Object ... ..
3. Java 자바 [API] - Object 클래스의 메소드 2 clone(), finalize() Object 클래스의 메소드들 2 1. 객체 복제 clone() 원본 객체의 필드값과 동일한 값을 가지는 새로운 객체를 생성하는 것. 객체를 복제하는 이유 : 원본 객체를 안전하게 보호하기 위해서이다. 신뢰하지 않는 영역으로 원본 객체를 넘겨서 작업할 경우, 원본 객체의 데이터가 훼손될 수 있다. 복제에는 얕은 복제와 깊은 복제가 두 가지가 있다. - 얕은 복제 (thin clone) 단순히 필드값을 복사해서 객체를 복사하는 것 필드값만 복제하기 때문에 필드가 기본 타입일 경우 값 복사가 일어나고, 필다가 참조 타입일 경우 객체의 번지가 복사된다. Object의 clone() 메소드는 자신과 동일한 필드값을 가진 얕은 복제된 객체를 리턴한다. 이 메소드로 객체를 복제하려면, 원본 객체는 반드시 java...
2. Java 자바 [API] - Object 클래스, Object 클래스의 메소드 1 자바의 클래스를 선언할 때 extends 키워드로 다른 클래스를 상속하지 않으면 암시적으로 java.lang.Object 클래스를 상속하게 된다. 따라서 자바의 모든 클래스는 Object 클래스의 자식이거나 자손 클래스가 된다. 즉, Object는 자바의 최상위 부모 클래스에 해당된다. - Object 클래스는 필드가 없고 메소드로 구성되어 있다. 이 메소드들은 모든 클래스들이 Object 클래스를 상속하므로, 모든 클래스에서 이용할 수 있다. Object 클래스의 메소드들 1 1. 객체 비교 equals() 형태 public boolean equals(Object obj) { . . . } - 매개 타입 : Object 로 모든 객체가 매개 값으로 대입될 수 있다. (Object가 최상위 타입이므로 모..
1. Java 자바 [API] - 자바 기본 API 패키지 1. API API : Application Programming Interface 즉 라이브러리(library) 로 프로그램에서 자주 사용되는 클래스 및 인터페이스의 모음이다. - String, System 등의 클래스도 모두 API 에 속하는 클래스들이다. - API 들은 \jre\lib\rt.jar 압축 파일에 저장되어 있다. - 자세한 API 도큐먼트는 아래 링크에서 볼 수 있다. https://docs.oracle.com/en/java/javase Java Platform, Standard Edition Documentation - Releases Java Platform, Standard Edition documentation, current and previous re..
3. JSP - 스크립트 요소 JSP의 스크립트 요소는 3 가지 종류가 있다. - 스크립트릿 (Scriptlet) - 표현식 (Expression) - 선언부 (Declaration) 스크립트 요소는 JSP에서 로직을 수행하는데 필요하다. 스크립트 코드를 사용해서 프로그램이 수행해야 하는 기능을 구현할 수 있다. 1. 스크립트릿 JSP 페이지에서 자바 코드를 실행할 때 사용하는 코드 블록이다. 형태 예) 1 ~ 10 까지의 합 출력 10 * 25 = * 메소드 이름 규칙 - 메소드 이름 첫 글자는 문자(알파벳, 한글 등) 또는 밑줄( _ ) 로 시작해야 한다. - 첫 글자를 제외한 나머지는 문자와 숫자 그리고 밑줄의 조합이어야 한다. - 메소드 이름은 대소문자를 구분한다. 4. JSP 주석 스크립트릿과 선언부의 코드 블록은 자바 코드..
2. JSP - page 디렉티브 <%@ page %> page 디렉티브는 JSP 페이지에 대한 정보를 입력하기 위해 사용된다. JSP 페이지가 어떤 문서를 생성하는지, 어떤 자바 클래스를 사용하는지, 세션에 참여하는지, 출력 버퍼의 존재 여부 등 JSP 페이지를 실행하는 데 필요한 정보를 입력할 수 있다. 예) page 디렉티브의 주요 속성 속성 설명 기본값 contentType JSP가 생성할 문서의 MIME 타입과 캐릭터 인코딩을 지정한다. text/html import JSP 페이지에서 사용할 자바 클래스 지정한다. session JSP 페이지가 세션을 사용할 지 여부 지정한다. false 일 경우 세션을 사용하지 않는다. true buffer JSP 페이지의 출력 버퍼 크기를 지정한다. none 일 경우 출력 버퍼를 사용하지 않는다. 8kb 일 경우..