2016. 9. 4. 17:31ㆍProgramming/Java
***Generic, Enum, Clone는 추가적 공부가 필요할 듯
1. 변수, 데이터타입: 데이터를 담는 그릇
2. 조건문(if, switch, for, while)
3. 배열: 여러 데이터 한꺼번에 표현
4. 클래스-객체: 붕어빵틀에서 찍어낸 붕어빵
5. 생성자, 필드, 메소드: 생성자는 창구, 필드는 정보, 메소드는 행위
6. 유효 범위(미국 법): class 직속 변수는 전역변수가 됨, 메소드 안 변수는 {}(각 주) 안에서만 통용, this.변수의 경우 클래스가 우선이 됨,
7. 저장 방식(static, heap): static은 왕의 측근(더 빠름), heap은 지방 관리
8. final, getter, setter: final은 상수화. getter, setter 통해서 final에 접근 ㄱ
9. extends, implements(인터페이스): 인터페이스는 강제 설문조사(public static final 기본적으로 가짐)
*자식 데이터타입은 부모 데이터타입(집)에 들어가 자원 사용 가능
10. 오버 라이딩(새 왕이 상속 후 법 바꿈), 오버로딩(오버로드가 저글링, 히드라 컨트롤)
11. Object 클래스(모든 클래스의 조상:오스트랄로) 직립보행 같은 기본적 기능 수행케하도록,
toString():객체를 문자열로 바꿔줌.
12. 클론 만들기:Cloneable(인터페이스)과 클래스에 clone() 메소드 필요(Object 반환하는)
13. Wrapper 클래스: 기본 데이터타입(int, double 등)을 클래스 형태로 포장해주는 것
ex) int -> Integer
14. 예외 처리(try~catch, throws) throw는 예외처리를 다음 사람에게 무책임하게 넘기는 것(=막장 회사), 최종적으로 사용자가 오류 해결하게끔
15. enum(열거형):연관된 값을 저장하고 그 값이 변경되지 않게 보장(private).
enum Grade{A, B, C, D, E}
"이 넘들만 써라"
Grade 값으론 A~E만 사용 가능
16. Generic: <T> 거대한 대문에 일일이 종족별 문지기를 두는 게 낭비라서, 한 놈(Object)를 시켰더니 너무 관대해서 잡놈이 다 들어옴(데이터타입 불안정). 그래서 Generic이란 융통성 있는 문지기 고용해 명단에 있는 애만 들어오도록 시킴.
17. CollectionFramework(다양한 용기를 제공), Set(=집합), List, Queue, Map으로 구성
1) ArrayList: array 한계(size 변경 불가) 극복, 자유롭게 추가 가능(고무 가방처럼)
ex) ArrayList<String> cats = ArrayList<String();
cats.add(cat1);
cats.add(cat2);
cats.add(cat0, 0); //첫 번째 배열에 넣음, 위 cat들은 하나씩 밀려남
for(Integer All : cats)
System.print.outln(All); //모든 cat들이 출력됨
2) HashSet: List와 달리 중복 비허용(1,2,3,3,3, 등록하면 1,2,3,만 저장됨)
*A.containsAll(B): A는 B를 모두 포함(부분 집합)
**A.addAll(B): A와 B의 합집합, A.retainAll(B): 교집합
***A.removeAll(B): 차집합
3) HashMap: key와 value(key에 대응하는 값) 받음.
put(key, value);로 추가
for(String name: 변수명.keySet() ) 으로 추출
4) Iterator: set 데이터를 이용하기 위한 뜰채 같은 것(set은 순번이 없기에), ArrayList에도 사용 가능,
hasNext():요소를 더 갖고 있는지 확인
nextInt(): 다음 요소를 return
5) 정렬(Collections.sort) sort 대상 객체는 Comparable을 구현해야. 즉 compareTo라는 비교 기준을 써넣어야 작동한다.
'Programming > Java' 카테고리의 다른 글
Day 24(9/5) 채팅창 만들기 (0) | 2016.09.05 |
---|---|
쉬운 예제 (0) | 2016.09.04 |
Day 23(9/1) sleep, windowClosing (0) | 2016.09.01 |
Day 22(8/31) Thread, sleep (0) | 2016.09.01 |
Day 21(8/30) InnerClass, Frame, EventHandler (0) | 2016.09.01 |