자바 입문
프로그래밍 언어인 자바 튜토리얼의 목차입니다.
자바는 객체 지향 프로그래밍의 대표적 언어로써 write once run anywhere (한번 작성하고 모든 곳에서 작동한다)의 모토로 개발된 언어입니다.
자바는 Sun Microsystem에서 시작하여 현재는 Oracle 사가 개발하고 있습니다. 오라클사의 자바SE를 기업에 사용하기 위해서는 구독형 유료 라이센스가 필요합니다만 학습을 위한 개인적 사용은 허가되있습니다. OPEN JDK의 사용도 추천합니다.
주제에 따라 포스팅을 묶었습니다. 따라서 강좌 번호 순서가 꼭 연결되지 않을 수도 있습니다.
자바 시작하기(Java Start!)
목차
자바 JDK (자바 개발 키트)와 IDE 설치부터 시작합니다. 가장 기본이 되는 변수(Variable)와 자료형(Data Type)의 기초부터 설명합니다.
자바 시작하기(getting started with Java)
변수와 자료형(variable and datatype)
문자 자료형(character datatype)
실수 자료형(float and double datatype)
흐름 제어(Flow Control)
프로그램의 흐름을 제어하는 문법을 학습합니다. if 조건분기 (if branch), for문(for loop), while문(while loop)를 사용할 수 있습니다.
if문 조건문(if branch)
for문(for loop)
while문(while loop)
객체지향 프로그래밍 소개
자바 객체지향 프로그래밍을 소개합니다. 클래스 개념부터 메소드, 인스턴스 등 기본 개념에 익숙해집니다.
클래스(class)
메소드(method)
인스턴스(instance)
생성자(constructor)
private 접근제어자(modifier)
this 의미(this meaning)
static 변수(static variable)
static 메소드(static method)
변수 Scope(variable scope)
자바 배열 기초
자바의 핵심 자료구조인 배열의 사용법을 학습합니다. 일반 배열부터 컬렉션 프레임워크의 ArrayList 까지 소개합니다.
배열(Java Array)
객체 배열(Array of Objects)
배열복사
자바 객체배열복사
자바 다차원 배열(Multi Dimension)
자바 ArrayList 클래스
객체지향 프로그래밍
자바 객체지향 프로그래밍의 중급 주제를 하나씩 살펴봅니다. 개념과 코드를 동시에 이해할 수 있습니다.
싱글톤 패턴 소개(Singleton)
상속(Inheritance)
상속과 형변환(Conversion)
메소드 오버라이딩(Overriding)
가상 메소드(Virtual Method)
다형성(Polymorphism)
추상 클래스(Abstract Class)
템플릿 메소드(Template Method)
final 키워드(final keyword)
인터페이스 기초(Interface)
인터페이스 다중 구현(Multi Interface)
인터페이스 다중 상속(Multi Inheritance Interface)
내부 클래스(Inner Class)
java.lang.* 패키지 클래스
자바의 기본 클래스가 들어있는 java.lang 패키지를 살펴봅니다.
Object 클래스
String 클래스
Wrapper 클래스
Class 클래스
컬렉션 프레임워크(Collection)
자바의 맞춤형 자료구조 시스템인 컬렉션 프레임워크를 전체적으로 살펴봅니다. 웬만한 자료구조는 이미 최적화된 구현이 되어 있습니다.
자바 제네릭(Generic)
컬렉션 프레임워크(Collection Framework)
ArrayList 컬렉션
LinkedList 컬렉션
Stack 클래스
Queue 컬렉션
Iterator 구현
HashSet 클래스
TreeSet 클래스
Comparable 인터페이스
HashMap 클래스
TreeMap 클래스
람다 표현식(Lambda)
함수형 프로그래밍인 람다 표현식을 소개합니다.
자바 람다식(Lambda Expression)
예외처리(Exception)
기본적인 런타임 예외처리를 다루어 봅니다.
자바 예외 처리(try and catch)
스트림(Stream)
데이터를 바이트로 추상화해서 다루는 스트림에 입문합니다. 스트림은 파일이 될수도 키보드 모니터 등 어떤 입출력장치도 대상이 될 수 있습니다. 또한 데이터 자체를 스트림으로 바꿀 수도 있습니다.