day celebrate day Holiday Holiday celebrate Holiday celebrate
상속을 통한 다형성 • 호출될 메쏘드 결정 § 참조 변수의 타입이 아니고 § 참조되고 있는 객체의 타입에 의해 결정된다. • day. celebrate(); § day가 Holiday 객체를 참조하는 경우 Holiday celebrate() • Holiday의 celebrate 호출 § day가 Christmas 객체를 참조하는 경우 • Christmas의 celebrate 호출 © 2004 Pearson Addison-Wesley. All rights reserved Christmas celebrate() 9 -10
상속을 통한 다형성 • Staff. Member 계층구조 Staff. Member Volunteer Employee Executive © 2004 Pearson Addison-Wesley. All rights reserved Hourly 9 -11
상속을 통한 다형성 • 다형 메쏘드를 이용하여 여러 종류의 직원에 급여 제공 하는 예제 • • See Firm. java (page 486) See Staff. java (page 487) See Staff. Member. java (page 489) See Volunteer. java (page 491) See Employee. java (page 492) See Executive. java (page 493) See Hourly. java (page 494) © 2004 Pearson Addison-Wesley. All rights reserved 9 -12
Firm. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -13
출력 © 2004 Pearson Addison-Wesley. All rights reserved 9 -14
Staff. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -15
Volunteer. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -16
Employee. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -17
Executive. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -18
Hourly. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -19
Hourly. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -20
인터페이스를 통한 다형성 • class Philosopher implements Speaker { … speak( ) { … } } • class Dog implements Speaker { … speak( ) { … } } • 다음 코드에서 살펴보자. Speaker guest = new Philospher(); guest. speak(); guest = new Dog(); guest. speak(); © 2004 Pearson Addison-Wesley. All rights reserved 9 -23
선택 정렬 • 예: original: smallest is 1: 2: 3: 6: 3 1 1 9 9 2 2 2 6 6 6 3 3 1 3 3 6 6 2 2 9 9 9 • 매번 나머지 값들 중에서 제일 작은 값을 찾아서 다음 위치의 값과 교환한다. • 두 값의 교환 temp = first; first = second; second = temp; © 2004 Pearson Addison-Wesley. All rights reserved 9 -27
Phone. List. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -29
Sorting. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -30
Sorting. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -31
Contact. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -32
© 2004 Pearson Addison-Wesley. All rights reserved 9 -33
삽입 정렬 • 예: original: insert 9: insert 6: insert 1: insert 2: 3 3 3 1 1 9 9 6 3 2 6 6 9 6 3 1 1 1 9 6 2 2 9 • See Sorting. java (page 501) © 2004 Pearson Addison-Wesley. All rights reserved 9 -35
선형 탐색(Linear Search) • 선형 탐색은 리스트의 처음부터 차례대로 검토한다. • 항목을 찾던지 아니면 리스트 끝에 도달할 것이다. • See Phone. List 2. java (page 508) • See Searching. java (page 509) © 2004 Pearson Addison-Wesley. All rights reserved 9 -39
Phone. List 2. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -40
Searching. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -41
© 2004 Pearson Addison-Wesley. All rights reserved 9 -48
© 2004 Pearson Addison-Wesley. All rights reserved 9 -50
슬라이더(Sliders) • 다음 예는 슬라이더를 이용하여 색상 콤포넌트의 RGB 값을 변경하는 내용이다. • See Slide. Color. java • See Slide. Color. Panel. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -53
Slide. Color. java © 2004 Pearson Addison-Wesley. All rights reserved 9 -54
Slide. Color. Panel. java (1/3) © 2004 Pearson Addison-Wesley. All rights reserved 9 -55
Slide. Color. Panel. java (2/3) © 2004 Pearson Addison-Wesley. All rights reserved 9 -56
Slide. Color. Panel. java (3/3) © 2004 Pearson Addison-Wesley. All rights reserved 9 -57
- Slides: 58