Development/백기선님의 온라인 자바 스터디 (15)
목표 자바의 상속에 대해 학습하세요. 학습할 것 (필수) 자바 상속의 특징 super 키워드 메소드 오버라이딩 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 final 키워드 Object 클래스 자바 상속의 특징 상속이란 부모 클래스(상위 클래스)와 자식 클래스(하위 클래스)가 있으며, 자식 클래스는 부모 클래스를 선택해서, 그 부모의 멤버를 상속받아 그대로 쓸 수 있게 된다. 기존 클래스를 재사용해서 새로운 클래스를 작성하는 것 => 효율적이고 개발시간을 줄일 수 있음 두 클래스를 조상과 자손으로 관계를 맺는 것 자손은 조상의 모든 멤버를 상속받는다. 자손의 멤버개수는 조상보다 같거나 많다. 상속을 받을 때 'extends'키워드를 사용한다. 부모 클래스의 priv..
목표 자바의 Class에 대해 학습하세요. 학습할 것 (필수) 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 과제 (Optional) int 값을 가지고 있는 이진 트리를 나타내는 Node 라는 클래스를 정의하세요. int value, Node left, right를 가지고 있어야 합니다. BinrayTree라는 클래스를 정의하고 주어진 노드를 기준으로 출력하는 bfs(Node node)와 dfs(Node node) 메소드를 구현하세요. DFS는 왼쪽, 루트, 오른쪽 순으로 순회하세요. Class 객체를 정의해 놓은 것, 객체의 설계도/틀 속성과 기능으로 정의되어 있다. 객체를 생성하는데 사용되며 객체는 클래스에 정의..
목표 자바가 제공하는 제어문을 학습하세요. 학습할 것 (필수) 선택문 반복문 선택문(조건문) - if, switch if문 가장 기본적인 조건문으로 조건식과 괄호{}로 이루어져 있다. ' 만일(if) 조건식이 참(true)라면 괄호{} 안의 문장들을 수행하라 ' 는 의미. 조건식의 결과는 true 또는 false 이어야 한다. 구조 if ( 조건식 ) { // 조건식이 참(true)일 때 수행될 문장들 } //예제 int num = 80; if( num > 50 ){ // true System.out.println("num은 50보다 큽니다."); } if( num == 50){ // false 괄호안에 문장이 실행되지 않음. System.out.println("num은 50과 같다."); } if( n..
목표 자바가 제공하는 다양한 연산자를 학습하세요. 학습할 것 산술 연산자 비트 연산자 관계 연산자 논리 연산자 instanceof assignment(=) operator 화살표(->) 연산자 3항 연산자 연산자 우선 순위 (optional) Java 13. switch 연산자 연산자 operator : 연산을 수행하는 기호 *피연산자 : 연산자의 작업대상 => 대부분 연산자는 두개의 피연산자를 필요로 한다. 연산자는 피연산자로 연산을 수행하고 나면 결과값을 반환한다. 산술연산자 (+, -, *, /, %) * , / , % 연산자는 +, - 연산자 보다 우선순의가 높으므로 먼저 처리된다. 피연산자가 정수형인 경우, 나누는 수로 0을 사용할 수 없다. 만일 0으로 나눈다면 실행시 오류(Artihmetic..
목표 자바의 프리미티브 타입, 변수 그리고 배열을 사용하는 방법을 익힙니다. 학습할 것 프리미티브 타입 종류와 값의 범위 그리고 기본 값 프리미티브 타입과 레퍼런스 타입 리터럴 변수 선언 및 초기화하는 방법 변수의 스코프와 라이프타임 타입 변환, 캐스팅 그리고 타입 프로모션 1차 및 2차 배열 선언하기 타입 추론, var 프리미티브 타입과 레퍼런스 타입 기본형(Primitive type) 논리형(boolean), 문자형(char), 정수형(byte, short, int, long), 실수형(float, double) 계산을 위한 실제값을 저장한다. 기본값이 있기 때문에 Null값이 존재하지 않는다. 기본형 타입에 Null값을 넣고 싶다면 래퍼클래스를 활용한다. 실제 값을 저장하는 공간으로 스택(stack..
목표 자바 소스 파일(.java)을 JVM으로 실행하는 과정 이해하기. 학습할 것 JVM이란 무엇인가 컴파일 하는 방법 실행하는 방법 바이트코드란 무엇인가 JIT 컴파일러란 무엇이며 어떻게 동작하는지 JVM 구성 요소 JDK와 JRE의 차이 JVM이란 무엇인가 자바가상머신(Java Virtual Machine, JVM)은 바이트코드(.class)를 실행할 수 있는 주체 자바 코드를 컴파일 해서 얻은 바이트코드를 해당 운영체제가 이해할 수 있는 기계어로 바꿔 실행시켜주는 역할 자바로 작성된 애플리케이션은 모두 JVM에서만 실행되기 때문에 반드시 JVM이 필요하다. 자바 프로그램이 어느 운영체제에서도 실행될 수 있게 프로그램 메모리를 관리하고 최적화해준다. 한번만 프로그램을 작성하면 모든 운영체제에서 사용할..