본문 바로가기

자바의 정석9

자바의 정석 (Chapter 12. 제네릭, 열거형, 애노테이션) 해당 게시물은 자바의 정석을 정리한 내용 입니다. 1. 제네릭(Generic) 1.1 제네릭? 제네릭의 정의 - 제네릭(Generic)은 컴파일 시 타입을 체크 해 주는 기능이다. - 또는 타입을 파라미터화 해서 컴파일 시 구체적인 타입이 결정 되도록 하는 것이다. 제네릭의 장점 - 객체의 타입 안정성을 높인다. ※ "타입 안정성을 높인다"는 것은 의도하지 않은 타입의 객체가 저장되는 것을 막고, 저장된 객체를 꺼내올 때 원래의 타입과 다른 타입으로 잘못 형변환 되어 발생할 수 있는 오류를 줄여준다는 뜻이다. - 형 변환의 번거로움을 줄여준다. 1.2 제네릭 클래스의 선언 - 제네릭 클래스를 작성할 때, Object 타입 대신 타입 매개변수(E)를 선언해서 사용한다. ① 예를 들어, ArrayList 클.. 2020. 8. 28.
자바의 정석 (Chapter 11. 컬렉션 프레임워크) 해당 게시물은 자바의 정석을 정리한 내용 입니다. 1. 컬렉션 프레임워크(collections framework) 컬렉션(collection) - 여러 객체(데이터)를 모아 놓은 것을 의미 프레임워크(framework) - 표준화, 정형화된 프로그래밍 방식 컬렉션 프레임워크(collections framework) - 컬렉션(여러 객체)을 다루기 위한 표준화된 프로그래밍 방식 - 컬렉션을 쉽고 편리하게 다룰 수 있는 다양한 클래스를 제공 - java.util 패키지에 포함. JDK 1.2 부터 제공 컬렉션 클래스(collection class) - 여러 객체를 저장할 수 있는 클래스 예) Vector, ArrayList, HashSet ... - 컬렉션 클래스들은 저장 공간이 부족하면 스스로 공간을 늘린.. 2020. 8. 23.
자바의 정석 (Chapter 9. java.lang 패키지와 유용한 클래스) 해당 게시물은 자바의 정석을 정리한 내용 입니다. 1. java.lang 패키지 1.1 Object 클래스 Object 클래스는 모든 클래스의 최고 조상이기 때문에 Object 클래스의 멤버들은 모든 클래스에서 바로 사용 가능하다. Object 클래스의 메서드 설 명 protected Object clone() 객체 자신의 복사본을 반환한다. public boolean equals(Object obj) 객체 자신과 주어진 객체(obj)를 비교한다. 같으면 true, 다르면 false protected void finalize() 객체가 소멸될 때 가비지 컬렉터에 의해 자동적으로 호출된다. 이때, 수행 되어야 하는 코드가 있을 때 오버라이딩 한다. (거의 사용안함) public Class getClass(.. 2020. 8. 14.
자바의 정석 (Chapter 8. 예외 처리) 해당 게시물은 자바의 정석을 정리한 내용 입니다. 1.1 프로그램 오류 프로그램이 실행 중 어떤 원인에 의해서 오작동을 하거나 비정상적으로 종료되는 경우가 있다. 이러한 결과를 초래하는 원인을 프로그램 에러 또는 오류라고 한다. 프로그램 오류는 컴파일 에러(compile-time error), 런타임 에러(runtime error), 논리적 에러(logical error)로 나눌 수 있다. 컴파일 에러 : 컴파일 시에 발생하는 에러 런타임 에러 : 실행 시에 발생하는 에러 논리적 에러 : 실행은 되지만, 의도와 다르게 동작하는 것 Java의 런타임 에러는 에러(error)와 예외(exception), 두 가지로 구분 된다. 에러(error) : 프로그램 코드에 의해서 수습될 수 없는 심각한 오류 예외(e.. 2020. 8. 8.
자바의 정석 (Chapter 7_3. 객체지향개념 2) 해당 게시물은 자바의 정석을 정리한 내용 입니다. 6.1. 추상 클래스(abstract class) 추상 클래스 - 추상 클래스는 추상 메서드(미완성 메서드)를 포함하고 있는 클래스이다. abstract class 클래스이름{ ... } abstract class Player { // 추상 클래스(미완성 클래스) abstract void play(int pos); // 추상 메서드(몸통이 없는 미완성 메서드) abstract void stop(); // 추상 메서드 } - 다른 클래스를 작성하는데 도움을 주기 위한 것이며 인스턴스 생성 불가 Player p = new Player(); // 에러. 추상 클래스의 인스턴스 생성 불가 - 추상 클래스는 상속을 통해 추상 메서드를 완성해야 인스턴스 생성이 가능.. 2020. 8. 3.
자바의 정석 (Chapter 7_2. 객체지향개념 2) 해당 게시물은 자바의 정석을 정리한 내용 입니다. 4.1. 제어자(modifier)란? 제어자 - 제어자(modifier)는 클래스와 클래스의 멤버(멤버 변수, 메서드)에 부가적인 의미를 부여한다. - 제어자의 종류는 접근 제어자와 그 외의 제어자로 나눌 수 있다. - 하나의 대상에 여러 개의 제어자를 조합해서 사용할 수 있으나, 접근제어자는 단 하나만 사용할 수 있다. 접근 제어자 : public, protected, (default), private 그 외 : static, final, abstract, native, transient, synchronized, volatile, strictfp 4.2. static - 클래스의, 공통적인 static이 사용될 수 있는 곳 - 멤버변수, 메서드, 초기.. 2020. 8. 2.