본문 바로가기

live-study7

[Java] 컬렉션 프레임워크(Collections Framework) [Java] 컬렉션 프레임워크(Collections Framework) 자료구조의 분류 자료구조 분류법은 많은 분류법이 있지만, 대표적으로 많이 분류되는 방법은 선형 자료구조(Linear Data Structure)과 비선형 자료구조(Nonlinear Data Structure)로 나눌 수 있습니다. 이러한 분류를 보통 '형태에 따른 자료구조'라고 보고, 각 자료구조에 알맞게 구체화 된 것들을 '구현된 자료구조'라고 합니다. 먼저 선형 자료구조(Linear Data Structure)에 대해 알아보면, 선형 자료구조는 쉽게 생각해서 데이터가 일렬로 연결된 형태라고 보면 됩니다.. 우리가 흔히 쓰는 int[] 배열같은 것이라 생각하면 됩니다.. 선형 자료구조는 대표적으로 리스트.. 2021. 2. 28.
[Live-Study] 상속 목표 자바의 상속에 대해 학습하세요. 학습할 것 (필수) 자바 상속의 특징 super 키워드 메소드 오버라이딩 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 더블 디스패치 추상 클래스 final 키워드 Object 클래스 이제야 반을 온 것 같습니다. (사실 아직 반도 안왔지만) 자주쓰는 상속의 개념인데 제대로 한번 정리해봣나 싶긴 합니다 ㅎㅎ 이번 기회에 자바의 상속에 대해 한번 제대로 알아보겠습니다. 자바 상속의 특징 상속(Inheritance) 부모가 소유하고 있는 재산의 일부를 자식이 물려받는 것을 생각해보면, 부모가 가진 것을 자식이 마음대로 쓰거나 그대로 쓰거나 선택할 수 잇습니다. 즉, 자식 클래스가 부모 클래스의 변수와 메소드를 물려 받아 쓰는 것입니다. 상속의 장.. 2021. 2. 25.
[Live-Study] 클래스 목표 자바의 Class에 대해 학습하세요. 학습할 것 (필수) 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 마감일시 2020년 12월 19일 토요일 오후 1시까지. 과제 (Optional) int 값을 가지고 있는 이진 트리를 나타내는 Node 라는 클래스를 정의하세요. int value, Node left, right를 가지고 있어야 합니다. BinrayTree라는 클래스를 정의하고 주어진 노드를 기준으로 출력하는 bfs(Node node)와 dfs(Node node) 메소드를 구현하세요. DFS는 왼쪽, 루트, 오른쪽 순으로 순회하세요. 늦게 시작한 감이있어 빠르게 하려하니 집중이 안되고, 정리도 대충하게 되는 .. 2021. 2. 18.
[Live-Study] 제어문 목표 자바가 제공하는 제어문을 학습하세요. 학습할 것 (필수) 선택문 반복문 이번엔 과제가 많습니다. 옵션이긴 하지만.. 자바 기본 문법에 직결되는 부분이 많은거같아 다 진행해보려 합니다. 선택문을 진행하기 앞서, 조건문도 정리하면 좋을 것 같아 정리했습니다. 조건문 if(조건문)에서 사용되는 조건문이란 참과 거짓을 판단하는 문장을 말합니다. 조건문이 참인지 거짓인지 따라 실행문의 제어가 결정되는데요 에제를 통해 바로 알아보도록 하겠습니다. if 문, 나이가 20살 이하인 학생은 어린 학생으로 보겠다 class Student { int age; int tall; public Student(int age, int tall) { this.age = age; this.tall = tall; } public b.. 2021. 1. 27.
[Live-Study] 연산자 목표 자바가 제공하는 다양한 연산자를 학습하세요. 학습할 것 산술 연산자 비트 연산자 관계 연산자 논리 연산자 instanceof assignment(=) operator 화살표(->) 연산자 3항 연산자 연산자 우선 순위 (optional) Java 13. switch 연산자 2주차까지 하며, 그동안 대충 알고있던 개념들을 확실히 잡을 수 있었습니다. 3주차도 부족하지 않은 정리를 해볼까합니다. 연산자(Operator)? 여러종류의 연산자 를 살펴보기 전, 연산자란 무엇인가에 대해 살펴볼 필요가 있습니다. 연산자는 변수와 값에 대한 작업을 수행하는데 쓰이는데 사용됩니다. 아래의 예제에선 + 연산자를 사용하여 두개의 값을 더하는 것을 볼 수 있습니다. int x = 100 + 50; + 연산자는 위의 예.. 2021. 1. 27.
[Live-Study] 자바 데이터 타입, 변수 그리고 배열 목표 자바의 프리미티브 타입, 변수 그리고 배열을 사용하는 방법을 익힙니다. 학습할 것 프리미티브 타입 종류와 값의 범위 그리고 기본 값 프리미티브 타입과 레퍼런스 타입 리터럴 변수 선언 및 초기화하는 방법 변수의 스코프와 라이프타임 타입 변환, 캐스팅 그리고 타입 프로모션 1차 및 2차 배열 선언하기 타입 추론, var 2주차가 시작되었습니다. 정리도 우선이지만 쉽게 이해할 수 있게 정리해보는 것을 목표로 했습니다. 프리미티브 타입 종류와 값의 범위 그리고 기본 값 타입(Data type)이란 해당 데이터가 메모리에 어떻게 저장되고, 프로그램에서 어떻게 처리되어야 하는지를 명시적으로 알려주는 것입니다. 자바에서 타입은 크게 기본형(프리미티브) 타입과 참조형(래퍼런스) 타입이 있습니다. 프리미티브 타입은.. 2021. 1. 27.
[Live-Study] JVM은 무엇이며 자바 코드는 어떻게 실행하는 것인가. 목표 자바 소스 파일(.java)을 JVM으로 실행하는 과정 이해하기 Overview JVM이란 무엇인가 컴파일 하는 방법 실행하는 방법 바이트코드란 무엇인가 JIT 컴파일러란 무엇이며 어떻게 동작하는지 JVM 구성 요소 JDK와 JRE의 차이 기선님이 주최하신 live-study 1주차입니다. 자바 개발자라고 떳떳히 말할 수 있을 기본기를 쌓아가는 과정입니다. JVM이란 무엇인가 이부분은 이전에 정리한 포스트로 대체하겠습니다. [Java] JVM이란? 컴파일 하는 방법 windows 기준으로 컴파일 하는 방법을 정리하겠습니다. 컴파일을 한다는 것은 .java파일을 .class 파일(바이트 코드)로 만드는 것을 의미합니다. JDK(Java Developer Kit) 자바 개발 도구를 설치하면 bin디렉토.. 2021. 1. 27.