일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Linux
- 오류
- 7kyu
- monthPicker
- 자바기초스터디
- 서울에어비앤비
- 시즌1
- 6kyu
- Oralce
- JavaScript
- 멀티쓰레드프로그래밍
- CentOS8
- SQL
- class파일바로보기
- Python
- 서울복층에어비앤비
- Eclipse
- Codewars
- CentOS
- 이클립스
- java
- 남산타워뷰
- 중첩쿼리
- 8kyu
- 주민번호마스킹
- 파이썬
- 사용자변경
- VMware
- https
- 이것이리눅스다
- Today
- Total
목록전체 글 (60)
보통사람
목표 자바의 어노테이션에 대해 학습하세요. 학습할 것 (필수) 어노테이션 정의하는 방법 @retention @target @documented 어노테이션 프로세서 1. 어노테이션(Annotation) 소스 코드 안에 추가하여 사용 할 수 있는 메타데이터의 일종 주석처럼 프로그램에는 영향을 주지 않으며 프로그램에 유용한 정보를 제공할 수 있음 용도 컴파일시 어노테이션을 사용하여 오류 및 경고를 알려 줄 수 있음 어노테이션 정보를 이용하여 코드, XML 파일 등을 생성할 수 있음 정의하는 방법 @interface 키워드를 이용 접근제어자 @interface 어노테이션명 { // 내용 기입 } public @interface MyAnnotation { // 내용 기입 } 어노테이션의 기본 구조 import j..
목표 자바의 열거형에 대해 학습하세요. 학습할 것 (필수) enum 정의하는 방법 enum이 제공하는 메소드 (values()와 valueOf()) java.lang.Enum EnumSet 0. Enum 변수가 상수 집합이 되도록 하는 특수한 데이터 유형으로 고정된 상수 집합인 경우에 사용함 상수값이 바뀌면 해당 상수를 참조하는 모든 소스를 다시 컴파일해야 하지만 열거형 상수를 이용하면 기존의 소스를 다시 컴파일하지 않아도 됨 값뿐만 아니라 타입까지 체크함(typesafe enum) System.out.println( Season.FALL == Season.SPRING ); System.out.println( Season.FALL == Season.FALL ); [실행결과] false true 1. En..
목표 자바의 예외 처리에 대해 학습하세요. 학습할 것 (필수) 자바에서 예외 처리 방법 (try, catch, throw, throws, finally) 자바가 제공하는 예외 계층 구조 Exception과 Error의 차이는? RuntimeException과 RE가 아닌 것의 차이는? 커스텀한 예외 만드는 방법 0. 오류 정의 : 프로그램이 오작동하거나 비정상적으로 종료되는 것을 의미 종류 컴파일 에러 : 컴파일 시 발생하는 에러 런타임 에러 : 런타임(실행)시 발생하는 에러 논리적 에러 : 프로그램이 실행은 되나 의도와 다르게 동작하는 것 1. Exception과 Error 공통점 : 런타임시 발생함 차이점 Exception : 소스코드로 예방할 수 있음 Error : 소스코드로도 예방 할 수 없음 2..
목표 자바의 인터페이스에 대해 학습하세요. 학습할 것 (필수) 인터페이스 정의하는 방법 인터페이스 구현하는 방법 인터페이스 레퍼런스를 통해 구현체를 사용하는 방법 인터페이스 상속 인터페이스의 기본 메소드 (Default Method), 자바 8 인터페이스의 static 메소드, 자바 8 인터페이스의 private 메소드, 자바 9 1. 인터페이스를 정의하는 방법 interface 키워드를 이용 접근 제어자로 public 또는 default만 가능함 추상 메소드와 상수만을 멤버로 가질 수 있음 모든 멤버 변수는 public static final 이어야 하며 생략할 수 있음 default 메소드와 static 메소드를 제외한 모든 메소드는 public abstract 이어야 하며 생략할 수 있음 defau..
목표 자바의 패키지에 대해 학습하세요. 학습할 것 (필수) package 키워드 import 키워드 클래스 패스 CLASSPATH 환경변수 -classpath 옵션 접근 지시자 1. package문 클래스의 묶음 또는 물리적으로 하나의 디렉터리를 의미함 서로 관련된 있는 것을 묶어놓음으로써 효율적으로 관리할 수 있으며 클래스 풀네임(FQCN)의 고유성을 보장하기 위해서 사용함 FQCN(Fully Qualified Class Name) : 클래스가 속한 패키지명까지 모두 포함한 이름을 의미(패키지명.클래스명) 점(.)을 구분자로 하여 계층구조로 구성되어 있음 모든 클래스는 반드시 하나의 패키지에 속해야 함 패키지를 선언하지 않으면 자바에서 기본적으로 제공하는 이름 없는 패키지(unnamed package)..
목표 자바의 상속에 대해 학습하세요. 학습할 것 (필수) 자바 상속의 특징 super 키워드 메소드 오버 라이딩 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 final 키워드 Object 클래스 1. 상속(Inheritance) 다른 클래스(상위클래스)의 멤버 변수와 메소드를 물려받는 것을 의미함 상속을 이용하면 적은 양의 코드로 새로운 클래스를 만들 수 있으며 코드의 재사용을 높일 수 있음 extends 키워드를 이용해서 상속할 클래스명을 명시함 자바 상속의 특징 Object 클래스를 제외하고는 모든 클래스는 하나의 상위클래스만 상속받을 수 있으며 이를 단일 상속(Single Inheritance) 이라고 함 상속을 선언하지 않아도 자동적으로 최상위 클래스인 Ob..
목표 자바의 Class에 대해 학습하세요. 학습할 것 (필수) 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 과제 (Optional) int 값을 가지고 있는 이진트리를 나타내는 Node라는 클래스를 정의하세요. int value, Node left, right를 가지고 있어야 합니다. BinrayTree라는 클래스를 정의하고 주어진 노드를 기준으로 출력하는 bfs(Node node)와 dfs(Node node) 메소드를 구현하세요. DFS는 왼쪽, 루트, 오른쪽 순으로 순회하세요. 1. 클래스(Class) 객체를 정의한 것으로 객체의 설계도, 객체를 생성하기 위한 틀이라고 생각하면 됨 사용 용도는 객체를 생성하는데 ..
목표 자바가 제공하는 제어문을 학습하세요. 학습할 것 (필수) 선택문 반복문 과제 (옵션) 과제 0. JUnit 5 학습하세요. 인텔리J, 이클립스, VS Code에서 JUnit 5로 테스트 코드 작성하는 방법에 익숙해질 것. 이미 JUnit 알고 계신분들은 다른 것 아무거나! 과제 1. live-study 대시 보드를 만드는 코드를 작성하세요. 깃헙 이슈 1번부터 18번까지 댓글을 순회하며 댓글을 남긴 사용자를 체크할 것. 참여율을 계산하세요. 총 18회에 중에 몇 %를 참여했는지 소숫점 두 자리 가지 보여줄 것. Github 자바 라이브러리를 사용하면 편리합니다. 깃헙 API를 익명으로 호출하는데 제한이 있기 때문에 본인의 깃헙 프로젝트에 이슈를 만들고 테스트를 하시면 더 자주 테스트할 수 있습니다...