• 2 기본형과 참조형
    김영한의 실전 자바 기본편 김영한의 실전 자바 기본편 김영한의 실전 자바 기본편 2. 기본형과 참조형 #1.인강/0.자바/2.자바-기본 [[/기본형 vs 참조형1 - 시작]] [[/기본형 vs 참조형2 - 변수 대입]] [[/기본형 vs 참조형3 - 메서드 호출]] [[/참조형과 메서드 호출 - 활용]] [[/변수와 초기화]] [[/null]] [[/NullPointerException]] [[/문제와 풀이]] [[/정리]] 기본형 vs 참조형1 - 시작 **자바에서 참조형을 제대로 이해하는 것은 정말 중요하다.** 지금까지 기본형과 참조형에 대해서 조금씩 보았다. 이번에는 기본형과 참조형에 대해서 더 깊이있게 알아보고 확실하 게 정리해보자. 변수의 데이터 타입을 가장 크게 보면 기본형과 참조형으로 분류할 수 있다. 사용하는 값을 변수에 직접 넣을 수 있는 기 본형, 그리고 이전에 본 `Student student1 `과 같이 객체가 저장된 메모리의 위치를 가리키는...
    변수 기본형 참조 참조값 실제 객체, 2 기본형과 참조형
  • 3 String 클래스
    김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 3. String 클래스 #1.인강/0.자바/3.자바-중급1편 [[/String 클래스 - 기본]] [[/String 클래스 - 비교]] [[/String 클래스 - 불변 객체]] [[/String 클래스 - 주요 메서드1]] [[/String 클래스 - 주요 메서드2]] [[/StringBuilder - 가변 String]] [[/String 최적화]] [[/메서드 체인닝 - Method Chaining]] [[/문제와 풀이1]] [[/문제와 풀이2]] [[/정리]] String 클래스 - 기본 자바에서 문자를 다루는 대표적인 타입은 `char `, `String ` 2가지가 있다. ```java package lang.string; public class CharArrayMain { public static void main(St...
    클래스 문자열 자바 메서드 경우 문자, 3 String 클래스
  • 4 래퍼, Class 클래스
    김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 4. 래퍼, Class 클래스 #1.인강/0.자바/3.자바-중급1편 [[/래퍼 클래스 - 기본형의 한계1]] [[/래퍼 클래스 - 기본형의 한계2]] [[/래퍼 클래스 - 자바 래퍼 클래스]] [[/래퍼 클래스 - 오토 박싱]] [[/래퍼 클래스 - 주요 메서드와 성능]] [[/Class 클래스]] [[/System 클래스]] [[/Math, Random 클래스]] [[/문제와 풀이1]] [[/문제와 풀이2]] [[/정리]] 래퍼 클래스 - 기본형의 한계1 기본형의 한계 자바는 객체 지향 언어이다. 그런데 자바 안에 객체가 아닌 것이 있다. 바로 `int`, `double ` 같은 기본형(Primitive Type)이다. 기본형은 객체가 아니기 때문에 다음과 같은 한계가 있다. **객체가 아님**: 기본형 데이터는 객체가 아니기 때문에, 객체 지향 프로그래밍의 장점을 살릴 수...
    클래스 기본형 메서드 객체 자바 한계, 4 래퍼 Class 클래스
  • 5 열거형 - ENUM
    김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 5. 열거형 - ENUM #1.인강/0.자바/3.자바-중급1편 [[/문자열과 타입 안전성1]] [[/문자열과 타입 안전성2]] [[/타입 안전 열거형 패턴]] [[/열거형 - Enum Type]] [[/열거형 - 주요 메서드]] [[/열거형 - 리팩토링1]] [[/열거형 - 리팩토링2]] [[/열거형 - 리팩토링3]] [[/문제와 풀이1]] [[/문제와 풀이2]] [[/정리]] 문자열과 타입 안전성1 자바가 제공하는 열거형(Enum Type)을 제대로 이해하려면 먼저 열거형이 생겨난 이유를 알아야 한다. 예제를 순서대 로 따라가며 열거형이 만들어진 근본적인 이유를 알아보자. 비즈니스 요구사항 고객은 3등급으로 나누고, 상품 구매시 등급별로 할인을 적용한다. 할인시 소수점 이하는 버린다. `BASIC ` 10% 할인 `GOLD ` 20% 할인 `DIAMOND ` 30% 할인 예) `...
    등급 금액 열거 문자열 문제 오타, 5 열거형 - ENUM
  • 6 날짜와 시간
    김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 6. 날짜와 시간 #1.인강/0.자바/3.자바-중급1편 [[/날짜와 시간 라이브러리가 필요한 이유]] [[/자바 날짜와 시간 라이브러리 소개]] [[/기본 날짜와 시간 - LocalDateTime]] [[/타임존 - ZonedDateTime]] [[/기계 중심의 시간 - Instant ]] [[/기간, 시간의 간격 - Duration, Period]] [[/날짜와 시간의 핵심 인터페이스]] [[/날짜와 시간 조회하고 조작하기1]] [[/날짜와 시간 조회하고 조작하기2]] [[/날짜와 시간 문자열 파싱과 포맷팅]] [[/문제와 풀이1]] [[/문제와 풀이2]] [[/정리]] 날짜와 시간 라이브러리가 필요한 이유 날짜와 시간을 계산하는 것은 단순하게 생각하면 쉬워보이지만, 실제로는 매우 어렵고 복잡하다. 왜 그런지 이유를 하나하나 살펴보자. 1. 날짜와 시간 차이 계산 특정...
    시간 자바 타임존 날짜 계산 윤년, 6 날짜와 시간
  • 7 중첩 클래스, 내부 클래스1
    김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 7. 중첩 클래스, 내부 클래스1 #1.인강/0.자바/3.자바-중급1편 [[/중첩 클래스, 내부 클래스란?]] [[/정적 중첩 클래스]] [[/정적 중첩 클래스의 활용]] [[/내부 클래스]] [[/내부 클래스의 활용]] [[/같은 이름의 바깥 변수 접근]] 중첩 클래스, 내부 클래스란? 다음과 같이 for문 안에 for문을 중첩하는 것을 중첩(Nested) for문이라 한다. ```java for (...) { //중첩 for문 for (...) { } } ``` 다음과 같이 클래스 안에 클래스를 중첩해서 정의할 수 있는데, 이것을 중첩 클래스(Nested Class)라 한다. ```java class Outer { ... //중첩 클래스 class Nested { ... } } ``` 중첩 클래스는 클래스를 정의하는 위치에 따라 다음과 같이 분류한다. 중첩 클래스의 분류 **중첩 클래스는 총 4가지가 있고,...
    클래스 중첩 내부 바깥 지역 변수, 7 중첩 클래스 내부 클래스1
  • 8 중첩 클래스, 내부 클래스2
    김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 8. 중첩 클래스, 내부 클래스2 #1.인강/0.자바/3.자바-중급1편 [[/지역 클래스 - 시작]] [[/지역 클래스 - 지역 변수 캡처1]] [[/지역 클래스 - 지역 변수 캡처2]] [[/지역 클래스 - 지역 변수 캡처3]] [[/익명 클래스 - 시작]] [[/익명 클래스 활용1]] [[/익명 클래스 활용2]] [[/익명 클래스 활용3]] [[/문제와 풀이1]] [[/문제와 풀이2]] [[/정리]] 지역 클래스 - 시작 지역 클래스(Local class)는 내부 클래스의 특별한 종류의 하나이다. 따라서 내부 클래스의 특징을 그대로 가진 다. 예를 들어서 지역 클래스도 내부 클래스이므로 바깥 클래스의 인스턴스 멤버에 접근할 수 있다. 지역 클래스는 지역 변수와 같이 코드 블럭 안에서 정의된다. **지역 클래스 예** ```java class Outer { public void process(...
    지역 클래스 변수 인스턴스 내부 메서드, 8 중첩 클래스 내부 클래스2
  • 9 예외 처리1 - 이론
    김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 9. 예외 처리1 - 이론 #1.인강/0.자바/3.자바-중급1편 [[/예외 처리가 필요한 이유1 - 시작]] [[/예외 처리가 필요한 이유2 - 오류 상황 만들기]] [[/예외 처리가 필요한 이유3 - 반환 값으로 예외 처리]] [[/자바 예외 처리1 - 예외 계층]] [[/자바 예외 처리2 - 예외 기본 규칙]] [[/자바 예외 처리3 - 체크 예외]] [[/자바 예외 처리4 - 언체크 예외]] 예외 처리가 필요한 이유1 - 시작 예외 처리가 필요한 이유를 알아보기 위해 간단한 예제 프로그램을 먼저 만들어보자. 이 프로그램은 사용자의 입력을 받고, 입력 받은 문자를 외부 서버에 전송하는 프로그램이다. 참고로 아직 네트워크를 학습하지 않았기 때문에 실제 통신하는 코드가 들어가지는 않는다. 그래도 예외 처리가 필요한 상황을 이해하기에는 충분할 것이다. **프로그램 구성도** **실행 예시** ``` 전송...
    서버 연결 외부 처리 자바 오류, 9 예외 처리1 - 이론
  • 10 예외 처리2 - 실습
    김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 10. 예외 처리2 - 실습 #1.인강/0.자바/3.자바-중급1편 [[/예외 처리 도입1 - 시작]] [[/예외 처리 도입2 - 예외 복구]] [[/예외 처리 도입3 - 정상, 예외 흐름 분리]] [[/예외 처리 도입4 - 리소스 반환 문제]] [[/예외 처리 도입5 - finally]] [[/예외 계층1 - 시작]] [[/예외 계층2 - 활용]] [[/실무 예외 처리 방안1 - 설명]] [[/실무 예외 처리 방안2 - 구현]] [[/try-with-resources]] [[/정리]] 예외 처리 도입1 - 시작 앞서 만든 프로그램은 반환 값을 사용해서 예외를 처리했다. 이런 경우 다음과 같은 문제가 있었다. 정상 흐름과 예외 흐름이 섞여 있기 때문에 코드를 한눈에 이해하기 어렵다. 쉽게 이야기해서 가장 중요한 정상 흐 름이 한눈에 들어오지 않는다. 심지어 예외 흐름이 더 많은 코드...
    처리 오류 서버 반환 코드 연결, 10 예외 처리2 - 실습
  • 11 다음으로
    김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 김영한의 실전 자바 중급 1편 11. 다음으로 #1.인강/0.자바/3.자바-중급1편 학습 내용 정리 전체 목차 1. Object 클래스 [[프로젝트 환경 구성]] [[java.lang 패키지 소개]] [[Object 클래스]] [[Object 다형성]] [[Object 배열]] [[toString()]] [[Object와 OCP]] [[equals() - 1. 동일성과 동등성]] [[equals() - 2. 구현]] [[문제와 풀이]] [[정리]] 2. 불변 객체 [[기본형과 참조형의 공유]] [[공유 참조와 사이드 이펙트]] [[불변 객체 - 도입]] [[불변 객체 - 예제]] [[불변 객체 - 값 변경]] [[문제와 풀이]] [[정리]] 3. String 클래스 [[String 클래스 - 기본]] [[String 클래스 - 비교]] [[String 클래스 - 불변 객체]...
    클래스 자바 처리 시간 지역 내부, 11 다음으로
  1  2  3  4  5  6  7  8  9  10  
이 분야 인기자료