자바
6월 3주차 회고 및 4주차 목표
지난주 목표는 지난 주에는 메인으로 스프링만 집중적으로 목표로 설정하고 스프링 공부만 집중적으로 했다. 스프링 서적은 토비의 스프링 vol.1과 인강은 인프런 김영한님의 스프링 핵심 원리 완주가 주 목표였고 서브로 리팩토링이나 포스팅이나 HTTP 인강였지만... 토비의 스프링 vol.1을 읽다보니 다른 것은 전혀 하지도 못했다. 토비의 스프링 vol.1 읽는데만 일주일이나 소비되었다. 토비의 스프링 vol.1 대부분의 개발자가 추천하는 스프링 책은 토비의 스프링이다. 지금도 토비의 스프링으로 스터디를 많이하는 것을 보면 얼마나 좋은 책인지 알 수 있다. 토비의스프링이 궁금해서 후기를 찾아보기도 했다. 내용이 어려워 접었다거나, 너무 오래된 내용이라 현재에는 안쓰는 기술들이 많다고 비권장한다는 후기가 종종..
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) 클래스를 유일..
5주차 : 클래스(Class)
github.com/whiteship/live-study/issues/5 5주차 과제: 클래스 · Issue #5 · whiteship/live-study 목표 자바의 Class에 대해 학습하세요. 학습할 것 (필수) 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 마감일시 github.com 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 5주차가 되었다. 이제 자바에서 중요한 클래스를 알아보자 그전에 알고 넘어가야 할 개념이 존재한다 바로 객체(Object) 다. 객체란? "객체란 물리적으로 존재하거나 추상적으로 생각할 수 있는 것..
3주차 과제 : 연산자
백기선 선생님의 자바 스터디 글이다 github.com/whiteship/live-study/issues/3 3주차 과제: 연산자 · Issue #3 · whiteship/live-study 목표 자바가 제공하는 다양한 연산자를 학습하세요. 학습할 것 산술 연산자 비트 연산자 관계 연산자 논리 연산자 instanceof assignment(=) operator 화살표(->) 연산자 3항 연산자 연산자 우선 순위 (option github.com 산술 연산자 비트 연산자 관계 연산자 논리 연산자 instanceof assignment(=) operator 화살표(->) 연산자 3항 연산자 연산자 우선 순위 (optional) Java 13. switch 연산자 이것이 자바다 책에서는 연산의 개념을 다음과 ..
2주차 과제: 자바 데이터 타입, 변수 그리고 배열
백기선 선생님의 자바 스터디 2주차 과제다 github.com/whiteship/live-study/issues/2 2주차 과제: 자바 데이터 타입, 변수 그리고 배열 · Issue #2 · whiteship/live-study 목표 자바의 프리미티브 타입, 변수 그리고 배열을 사용하는 방법을 익힙니다. 학습할 것 프리미티브 타입 종류와 값의 범위 그리고 기본 값 프리미티브 타입과 레퍼런스 타입 리터럴 변수 선언 github.com 프리미티브 타입 종류와 값의 범위 그리고 기본 값 프리미티브 타입과 레퍼런스 타입 리터럴 변수 선언 및 초기화하는 방법 변수의 스코프와 라이프타임 타입 변환, 캐스팅 그리고 타입 프로모션 1차 및 2차 배열 선언하기 타입 추론, var 가장 먼저 변수에 대해 간단히 보자 변수..
1주차 : JVM은 무엇이며 자바 코드는 어떻게 실행하는 것인가.
JVM이란 무엇인가 사람들이 사용하는 운영체재는 여러 가지가 존재합니다. 대표적으로 윈도우, 맥OS, 리눅스 등이 있죠. JAVA로 간단한 프로그램을 작성했다고 생각해봅시다. 운영체재마다 똑같은 결과물로 실행이 될 수 있을까요? 아닙니다. 운영체재마다 실행되는 방식이 다르기에 하나의 프로그램이라도 각각 코드를 작성해야 합니다. 이런 문제 때문에 나온 게 JVM (Java Virtual Marchine) 입니다. JVM 는 운영체재와 Java 의 중계역할을 해주니, 각각의 운영체재에서 같은 결과물을 얻게 됩니다(자바의 독립성). 대신 JVM 는 각 운영체재마다 다르게 존재하는 것만 염두해주시면 됩니다. 컴파일하는 방법 JAVA 프로그램을 작성합니다. 저장된 JAVA 경로로 이동합니다 HelloWorld.j..