컬렉션 프레임웍(collections framework)(!!!)
컬렉션(collection)
여러 객체(데이터)를 모아 놓은 것을 의미
프레임웍(framework)(library+표준화됨)
표준화, 정형화된 체계적인 프로그래밍 방식
컬렉션 프레임웍(collections framework)
컬렉션(다수의 객체)를 다루기 위한 표준화된 프로그래밍 방식
컬렉션을 쉽고 편리하게 다룰 수 있는 다양한 클래스를 제공
java.util패키지에 포함. JDK1.2부터 사용
컬렉션 클래스(collection class)
다수의 데...
날짜와 시간
java.util.Date
날짜와 시간을 다룰 목적으로 만들어진 클래스
Date의 메서드는 거의 삭제됨
java.util.Calendar
Date클래스 개선
java.time패키지
Date와 Calendar의 단점을 개선 JDK1.8
Calendar클래스
추상 클래스이므로 getInstance()를 통해 구현된 객체를 얻어야한다.
주의할점!!! Month 필드는 값이 011이므로 112월 계산시 고려해야함
getInstance()의 현재시간으로 초기화된 객체반환. clear()한다면 Calendar객...
Object클래스
모든 클래스의 최고 조상 오직 11개의 메서드만을 가지고 있다.
notify(), wait()등은 쓰레드와 관련된 메서드다
getClass()는 자동으로 만들어지며, 객체 자신의 클래스 정보를 담고있는 Class인스턴스를 반환한다(=객체정보==설계도 정보)
equals()
객체 자신(this)과 주어진 객체(obj)를 비교한다. 같으면 true 다르면 false
Object클래스의 equals()는 객체의 주소를 비교(참조변수 값 비교)
따라서 equals() 의도대로 사용하고싶다면 오버라이딩 필수
...
예외처리프로그램 오류
컴파일 에러(compile-time error): 컴파일 할떄 발생하는에러(실행불가)
자바 컴파일러가 하는일
구문체크
번역
최적화(간단한 계산은 해놓음)(extends Object같은것넣어줌)
런타임 에러(runtime error): 실행할 때 발생하는 에러(실행중 프로그램종료)(컴파일할때는 논리적으로는 통과했던것)
논리적 에러(logical error): 작성 의도와 다르게 동작(프로그램 종료X, 의도와 다르게 오류생김)
자바의 런타임 에러(실행중 발생하는 에러)
에러(error) = 프로그램 ...
객체지향개념 2상속(Inheritance)
기존의 클래스로 새로운 클래스를 작성하는 것(코드의 재사용)
두 클래스를 부모와 자식으로 관계를 맺어주는 것
자손은 조상(부모와 그위모든애들)의 모든 멤버를 상속받는다(생성자, 초기화블럭 제외)
자손의 멤버 개수는 조상보다 같거나 많다.
자손의 변경이 조상에 영향을 미치지 않는다.
12345678910111213141516171819202122232425262728293031// Ex7_1.javaclass Tv { boolean power; // 전원상태(on/off)...
객체 지향 언어 (6장~7장)객체 지향언어 특성
코드 재사용성이 높고, 유지보수가용이, 중복 코드 제거
객체지향 언어 = 프로그래밍 언어 + 객체지향개념(규칙)
객체 지향언어 핵심 개념(일단 외우기 !!!)
캡슐화
상속
추상화
다형성
객체지향개념 1클래스와 객체
클래스의 정의: 클래스란 객체를 정의해 놓은것 (객체를 찍어내기위한 설계도면!)
클래스의 용도: 클래스는 객체를 생성하는데 사용
객체의 정의: 실제로 존재하는것, 사물 또는 개념 (제품)
객체의 용도: 객체가 가지고 있는 기능과 속성에 따라 다름
클래스...
배열의 생성과 선언 배열을 인덱스배열이란?
배열은 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것
저장 공간이 연속적임
score라는 int배열이 생기고 인덱스로 접근가능함
배열의 선언과 생성
배열의 선언 - 배열을 다루기 위한 참조변수의 선언
(변수는 선언하는 순간 생성되지만, 배열의 선언은 참조변수 선언.. 추후생성꼭 필요)
score = new int[5] 하는 순간 int[5] 공간 메모리 주소확보되며, 이후 score라는 참조변수가 이 메모리 주소를 가르킴
배열의 인덱스배열의 인덱스 - 각 요소에 자...
자주쓰는 조건식
조건문과 반복문 (제어문)조건문
조건을 만족할 때만 {} 를 수행 (0~1번)
if ,switch
반복문
조건을 만족하는 동안 {}를 수행(0~n번)
for, while
if 문조건식이 참일때 괄호 {}안에 문장들을 수행한다
12345if (조건식) { //조건식이 true일때 수행될 문장들을 적는다} else { //조건식이 false일때 수행될 문장들을 적는다}
블록{ }
여러 문장을 하나로 묶어주는 것
하나만 실행하면 { } 생략가능
if -else if ...
연산자연산자와 피연산자
연산자: 연산을 수행하는 기호 >> 모든 연산자는 연산결과를 반환한다.( 괄호는 연산자아님)
피연산자: 연산자의 연산 수행 대상(x,3 …)
연산자의 종류
(비트연산자는 무시하기)
(type): 형변환
? 3형 연산자
연산자 우선순위
연산자가 둘 이상있을때 어떤 연산을 먼저 수행할지 자동 결정하는것
아래 우선 순위 외우기(!!!) == 상식적임
부호 연산자는 1항연산자이므로 2항 연산자보다 먼저 계산됨
대입 연산자는 왼쪽에 있는 모든 계산를 끝나고 변수에 대입하는것으로 우선순위가 ...
단축키
command +shift + L (단축키 목록)
command +D (한줄삭제)
command +option+down (행단위 복사)
option+command+A (멀티 컬럼 편집)
option+up,down(행단위이동
control + i(자동들여쓰기)
control + / (주석처리)
/* ~*/ (여러 행 모두 주석처리 감싸기)
control+space 자동완성
preferences에서 content assist 등록에 .a~z적어놓기
알아두기
printin() - 출력후 줄바꿈안함
println() - ...