오늘 배운 키워드는 제너릭 클래스, 예외처리, Collection 이였다. 간단하게 중요한 부분만 설명하자면 이렇다.
보통 생성클래스 변수는
Car car = new Car();
이렇게 생성하지만, 제너릭 클래스는
클래스<TYPE> 변수 = new 클래스();
이렇게 생성한다. 내용을 보자면 이렇다.
제너릭 클래스는 TYPE을 일반화 시킨것이다.
Class Basket<T>로 생성을 하고, <K,V> key와 value로도 나눌 수 있다.
클래스 변수는 공유변수인 데 제너릭을 쓰게되면 인스턴스마다 달라지기 때문에 불가능하다.
Class Basket<T>
private T king;
~~~~
제너릭 메서드는 제너릭 클래스와 별계로 메서드 안에서 파라메터나 반환타입을 제너릭으로 줄 수 있다.
public <T> start(T king){
}
여러가지 타입이 많고, 제한을 해주고싶은 것이 있다면 제너릭 타입으로 하는 것이 좋다.
2. 예외처리
기본적인 구조는
try{
}
catch{
}
finally{
}
try에는 예외가 일어날 것 같은 코드를 넣으면
catch에서 잡아서 강제 종료를 막기위해서 사용하고 finally는 어떤 경우에도 실행되는 코드이다.
보통 compile오류는 컴파일러가 잡아주지만, 런타임오류는 컴파일러가 잡아주지 못한다. 그렇기에 강제종류가 일어날 수 있는데 이걸 예측해서 try catch구문으로 방지 할 수있다.
Connection은 내일 마무리하겠다.
일단 List , Set ,Map으로 나뉘고
ArrayList , LinkedList
HashSet , LinkedSet, TreeSet
HashMap, TreeMap
으로 나뉜다. 간단 하게 설명하자면
ArrayList는 맨앞 맨끝 순차적으로 넣고 빼고 할때 유용하고 값을 검색할 때 유용하다. LinkedList는 중간에 값을 뺴고 넣고 삭제할 때 편리하다.
Tree는 정렬이 가능한 것으로 할 수 있고, 나머지는 순서를 생각하지 않는다.