개발 & 방법론/Java
12주차 : 애노테이션
애노테이션에 대해 알아보자 12주차 과제: 애노테이션 · Issue #12 · whiteship/live-study 목표 자바의 애노테이션에 대해 학습하세요. 학습할 것 (필수) 애노테이션 정의하는 방법 @retention @target @documented 애노테이션 프로세서 마감일시 2021년 2월 6일 토요일 오후 1시까지. github.com 목표 자바의 애노테이션에 대해 학습하세요. 학습할 것 (필수) 애노테이션 정의하는 방법 @retention @target @documented 애노테이션 프로세서 Annotation 이란? 개발을 하다보면 클래스, 메서드, 변수 앞에 붙은 @ 표시를 많이 보았을 것이다 어노테이션이라 부르며, 자바5부터 추가된 요소다 사전적 의미는 "주석"이며 의미대로 자바 ..
11주차 과제 : enum
11주차 과제: Enum · Issue #11 · whiteship/live-study 목표 자바의 열거형에 대해 학습하세요. 학습할 것 (필수) enum 정의하는 방법 enum이 제공하는 메소드 (values()와 valueOf()) java.lang.Enum EnumSet 마감일시 2021년 1월 30일 토요일 오후 1시까지. github.com 목표 자바의 열거형에 대해 학습하세요. 학습할 것 (필수) enum 정의하는 방법 enum이 제공하는 메소드 (values()와 valueOf()) java.lang.Enum EnumSet enum 정의하는 방법 Enum 는 열거형 혹은 상수집합으로 부른다 class 대신 enum 으로 정의한다 정의 방법은 3가지로 나눠진다 // 1. java 파일로 정의 ..
10주차 과제 : 멀티쓰레드 프로그래밍
10주차 과제: 멀티쓰레드 프로그래밍 · Issue #10 · whiteship/live-study 목표 자바의 멀티쓰레드 프로그래밍에 대해 학습하세요. 학습할 것 (필수) Thread 클래스와 Runnable 인터페이스 쓰레드의 상태 쓰레드의 우선순위 Main 쓰레드 동기화 데드락 마감일시 2021년 1월 23일 github.com 목표 자바의 멀티쓰레드 프로그래밍에 대해 학습하세요. 학습할 것 (필수) Thread 클래스와 Runnable 인터페이스 쓰레드의 상태 쓰레드의 우선순위 Main 쓰레드 동기화 데드락 Thread 클래스와 Runnable 인터페이스 프로세스와 스레드에 대해 알아보자 프로세스(Process) 운영체제에서 실행중인 하나의 애플리케이션을 프로세스라고 한다 프로세스는 운영체제로부터..
9주차 : 예외처리
9주차 과제: 예외 처리 · Issue #9 · whiteship/live-study 목표 자바의 예외 처리에 대해 학습하세요. 학습할 것 (필수) 자바에서 예외 처리 방법 (try, catch, throw, throws, finally) 자바가 제공하는 예외 계층 구조 Exception과 Error의 차이는? RuntimeException과 RE가 github.com 목표 자바의 예외 처리에 대해 학습하세요. 학습할 것 (필수) 자바에서 예외 처리 방법 (try, catch, throw, throws, finally) 자바가 제공하는 예외 계층 구조 Exception과 Error의 차이는? RuntimeException과 RE가 아닌 것의 차이는? 커스텀한 예외 만드는 방법 개발자의 고통... 그 이름..
자바 8주차 : 인터페이스
8주자 과제: 인터페이스 · Issue #8 · whiteship/live-study 목표 자바의 인터페이스에 대해 학습하세요. 학습할 것 (필수) 인터페이스 정의하는 방법 인터페이스 구현하는 방법 인터페이스 레퍼런스를 통해 구현체를 사용하는 방법 인터페이스 상속 인터 github.com 목표 자바의 인터페이스에 대해 학습하세요. 학습할 것 (필수) 인터페이스 정의하는 방법 인터페이스 구현하는 방법 인터페이스 레퍼런스를 통해 구현체를 사용하는 방법 인터페이스 상속 인터페이스의 기본 메소드 (Default Method), 자바 8 인터페이스의 static 메소드, 자바 8 인터페이스의 private 메소드, 자바 9 인터페이스 정의하는 방법 인터페이스는 추상클래스를 더 추상화한 것으로 공통적인 기능을 규격..
7주차 : 패키지
github.com/whiteship/live-study/issues/7 7주차 과제: 패키지 · Issue #7 · whiteship/live-study 목표 자바의 패키지에 대해 학습하세요. 학습할 것 (필수) package 키워드 import 키워드 클래스패스 CLASSPATH 환경변수 -classpath 옵션 접근지시자 마감일시 2021년 1월 2일 토요일 오후 1시까지. github.com 학습할 것 (필수) package 키워드 import 키워드 접근지시자 클래스패스 CLASSPATH 환경변수 -classpath 옵션 package 패키지란 클래스를 체계적으로 관리하기 위한 폴더 저장 방식이자, 패키지명과 클래스명을 합쳐(FQCN:full qualified class name) 클래스를 유일..
6주차 : 상속
github.com/whiteship/live-study/issues/6 6주차 과제: 상속 · Issue #6 · whiteship/live-study 목표 자바의 상속에 대해 학습하세요. 학습할 것 (필수) 자바 상속의 특징 super 키워드 메소드 오버라이딩 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 final 키워드 Object 클래스 마 github.com 자바 상속의 특징 super 키워드 메소드 오버라이딩 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 final 키워드 Object 클래스 자바 상속의 특징 상속이란 부모의 멤버를 자식에게 물러주는 것으로 사용 용도는 코드 중복을 방지하고 공통 코드를 재사용하기다 다..
5주차 : 클래스(Class)
github.com/whiteship/live-study/issues/5 5주차 과제: 클래스 · Issue #5 · whiteship/live-study 목표 자바의 Class에 대해 학습하세요. 학습할 것 (필수) 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 마감일시 github.com 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 5주차가 되었다. 이제 자바에서 중요한 클래스를 알아보자 그전에 알고 넘어가야 할 개념이 존재한다 바로 객체(Object) 다. 객체란? "객체란 물리적으로 존재하거나 추상적으로 생각할 수 있는 것..