목록스터디 (23)
영권's
목표 자바의 열거형에 대해 학습하세요. 학습할 것 (필수) enum 정의하는 방법 enum이 제공하는 메소드 (values()와 valueOf()) java.lang.Enum EnumSet enum : 열거형이라고 불리며, 서로 연관된 상수들의 집합이라고 불린다. 상수란? 변하지 않는 값을 의미 합니다. 자바에서는 final static 키워드가 붙은 값을 상수라고 합니다 열거형은 JDK 1.5에서 추가 되었으며 열거형이 갖는 값뿐만 아니라 타입까지 관리하기 때문에 논리적인 오류를 줄일 수 있다. 자바 외 언어들에서는 타입이 달라도 값이 같으면 조건식 결과가 참(true)인 경우가 있으나, 자바의 열거형은 '타입에 안전한 열거형(typesafe enum)' 이라서 실제 값이 같아도, 타입이 다르면 컴파일..
목표 자바의 멀티쓰레드 프로그래밍에 대해 학습하세요. 학습할 것 (필수) Thread 클래스와 Runnable 인터페이스 쓰레드의 상태 쓰레드의 우선순위 Main 쓰레드 동기화 데드락 프로세스와 쓰레드 프로세스란 간단히 말해서 '실행중인 프로그램'이다. 프로그램을 실행하면 OS로부터 실행에 필요한 자원(메모리)을 할당받아 프로세스가 된다. 프로세스는 프로그램을 수행하는 데 필요한 데이터와 메모리등의 자원 그리고 스레드로 구성 되어 있으며 프로세스의 자원을 이용해서 실제로 작업을 수행하는 것이 바로 쓰레드이다. 그래서 모든 프로세스는 최소 하나 이상의 쓰레드가 존재하며, 둘 이상의 쓰레드를 가진 프로세스를 '멀티쓰레드 프로세스'라고 한다. 하나의 프로세스가 가질 수 있는 쓰레드의 개구는 제한되어 있지 않으..
목표 자바의 예외 처리에 대해 학습하세요. 학습할 것 (필수) 자바에서 예외 처리 방법 (try, catch, throw, throws, finally) 자바가 제공하는 예외 계층 구조 Exception과 Error의 차이는? RuntimeException과 RE가 아닌 것의 차이는? 커스텀한 예외 만드는 방법 예외와 에러 컴퓨터 하드웨어의 오동작 또는 고장으로 인해 응용프로그램 실행 오류가 발생하는 것을 자바에서는 에러(error)라고 한다. 에러는 JVM 실행에 문제가 생겼다는 것이므로 JVM 위에서 실행되는 프로그램을 아무리 견고하게 만들어도 결국 실행 불능이 된다. 개발자는 이런 에러에 대처할 방법이 전혀 없다. 자바에서는 에러 이외에 예외(Exception)이라고 부르는 오류가 있다. 예외란 사..
목표 자바의 인터페이스에 대해 학습하세요. 학습할 것 (필수) 인터페이스 정의하는 방법 인터페이스 구현하는 방법 인터페이스 레퍼런스를 통해 구현체를 사용하는 방법 인터페이스 상속 인터페이스의 기본 메소드 (Default Method), 자바 8 인터페이스의 static 메소드, 자바 8 인터페이스의 private 메소드, 자바 9 인터페이스란? 자바에서 인터페이스는 객체의 사용 방법을 정의한 타입이다. 인터페이스는 객체의 교환성을 높여주기 때문에 다형성을 구현한느 매우 중요한 역할을 한다. 인터페이스의 역할 인터페이스는 개발 코드와 객체가 서로 통신한는 접점 역할을 한다. 개발 코드가 인터페이스의 메소드를 호출하면 인터페이스는 객체의 메서드를 호출시킨다. 그렇기 때문에 개발 코드는 객체의 내부 구조를 알..
목표 자바의 패키지에 대해 학습하세요. 학습할 것 (필수) package 키워드 import 키워드 클래스패스 CLASSPATH 환경변수 -classpath 옵션 접근지시자 package 키워드 패키지란 우리가 컴퓨터에서 사용하는 폴더와 비슷한 개념이다. 패키지는 수 많은 클래스들을 체계적으로 관리하기 위해 존재한다. 폴더를 만들어서 파일을 관리하듯 패키지를 만들어서 클래스를 저장/관리한다. 패키지의 물리적인 형태는 "파일 시스템의 폴더" 이다. 또한, 파일 시스템의 폴더 기능만이 아니라 클래스의 일부분이다. pakage 는 소스의 가장 첫줄에 위치하며 클래스 파일 안에 하나의 pakage 만 선언할 수 있습니다. 만약 pakage 선언이 없다면 default pakage 에 속한것으로 취급하며 defa..
목표 자바의 상속에 대해 학습하세요. 학습할 것 (필수) 자바 상속의 특징 super 키워드 메소드 오버라이딩 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 final 키워드 Object 클래스 자바 상속의 특징 현실에서 상속은 부모가 자식에게 물려주는 행위를 말하는 것처럼 자바에서 상속 또한 자식이 부모의 멤버를 물려받아 사용하며 확장시킬 수 있다. 부모 클래스를 상위 클래스, 자식 클래스를 하위 클래스 또는 파생 클래스라고 한다. 상속은 이미 잘 개발된 클래스를 재사용하여 새로운 클래스를 만들기 때문에 코드의 중복을 줄여준다. field1,field2,method1(),method2()를 가지는 클래스를 작성했을 때, 4개를 모두 처음부터 작성하는 것보다는 fie..