데이터베이스(DB, Database)란? 데이터베이스(DB, Database) : 저장장치 내에 정리되어 저장된 데이터의 집합 데이터베이스 종류 계층형 데이터베이스 : 폴더와 파일 등의 계층 구조로 데이터를 저장 관계형 데이터베이스 : 행과 열을 가지는 표 형식의 데이터(2차원)를 저장 객체지향 데이터베이스 : 객체 그대로를 데이터베이스의 데이터로 저장 XML 데이터베이스 : XML 형식으로 기록된 데이터를 저장 키-밸류 스토어(KVS) : 키(key)와 그에 대응하는 값(value)이라는 단순한 형태의 데이터를 저장 RDBMS (Relational DataBase Management System) 제품 - Oracle, DB2, SQL Server, PostgreSQL, MySQL, SQLite SQL..
1. Visual Studio Code 설치https://code.visualstudio.com/download Download Visual Studio Code - Mac, Linux, WindowsVisual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows. Download Visual Studio Code to experience a redefined code editor, optimized for building and debugging modern web and cloud applications.code.visualstudio.com 2. VS code 실행 후 extension 탭에서 ..
1. 지네릭스(Generics) ☾ 지네릭스 : 컴파일 시 타입을 체크(compile-time type check) - jdk 1.5부터 도입 : 객체의 타입을 미리 명시함으로써 번거로운 형변환 감소 : 타입 안정성을 높이고 형변환의 번거로움을 줄여줌 class Box { } - Box : 지네릭 클래스 - T : 타입 변수(매개변수) - Box : 원시 타입 지네릭스 클래스의 선언 class Box { T item; void setItem(T item) { this.item = item; } T getTime() { return item; } } 사용 방법 Box b = new Box(); // 타입 T 대신 String 타입 지정 // b.setItem(new Object); // 에러. String..
1. 컬렉션 프레임워크(Collections Framework) ☾ 컬렉션 프레임워크(Collections Framework) : 컬렉션(다수의 객체)을 다루기 위한 표준화된 프로그래밍 방식 : 인터페이스와 다형성을 이용한 객체지향적 설계를 통해 표준화 : java.util 패키지에 포함(jdk1.2부터 제공) 컬렉션 프레임워크의 핵심 인터페이스 Collection (컬렉션) : 컬렉션을 다루는데 가장 기본적인 메서드 정의(읽고, 추가하고, 삭제) List (리스트) : 순서 O, 중복 O 데이터의 집합(ex. 대기자 명단) - 구현클래스 : ArrayList, LinkedList, Stack, Vector 등 Set (집합) : 순서 X, 중복 X 데이터의 집합(ex. 양의 정수 집합) - 구현클래스 ..
1. 날짜와 시간 java.util.Date : 날짜와 시간을 다룰 목적으로 만들어진 클래스(jdk1.0) : 날짜와 시간을 함께 다룬다는 단점이 존재 java.util.Calendar : Date클래스를 개선한 새로운 클래스(jdk1.1) : 여전히 날짜와 시간 동시에 다루지만 현재도 쓰임 java.time패키지 : 날짜와 시간을 따로 다룰 수 있도록 개선(jdk1.8) Calendar클래스 : 추상 클래스이므로 getInstance()를 통해 구현된 객체를 얻어야 함 : 사용자 환경에 따라 서양력(그레고리력), 불교력, 일본력 등으로 자동 변경됨 : java.util.Calendar를 임포트 해야 함 import java.util.Calendar; Calendar cal = Calendar.getIn..
1. java.lang 패키지 ☾ java.lang : java 프로그래밍에 가장 기본이 되는 클래스 포함 : import문 없이도 사용 가능 2. Object 클래스 ☾ Object equals(Object obj) : 객체의 주소값이 같은지 비교하여 그 결과를 boolean값으로 알려줌 : 일반적으로 주소값 대신 iv값 비교하도록 오버라이딩함 class Person { long id; public boolean equals(Object obj) { //Object클래스의 equals 오버라이딩 if (!(obj instanceof Person)) { return false; } Person p = (Person)obj; return this.id == p.id; } Person(long id) { t..
예외처리(exception handling) 프로그램 오류 컴파일 에러 : 컴파일할 때 발생하는 에러. 프로그램 실행 안됨 런타임 에러 : 문법에는 맞지만 실행 중 발생하는 에러. 프로그램 종료됨 논리적 에러 : 작성 의도와 다르게 동작. 프로그램은 실행됨 런타임 에러 에러는 어쩔 수 없지만 예외는 처리하자 - 에러 : 코드에 의해 수습될 수 없는 심각한 오류(OOME:Out Of Memory Error) - 예외 : 코드에 의해 수습될 수 있는 미약한 오류(Exception, RuntimeException 등) 예외 - Exception예외 클래스들(checked예외) : 컴파일러가 예외 처리 여부 체크. 예외 처리 필수 - RuntimeException예외 클래스들(unchecked예외) : 컴파일러..