다운 캐스팅 (down casting) 업 캐스팅 된 클래스를 다시 원래의 타입으로 형 변환하는 것을 말합니다. Customer vc = new VIPCustomer(); //묵시적 형변환 : 컴파일러가 코딩을 하는 것 VIPCustomer vCustomer = (VIPCustomer)vc; //명시적 형변환 : 개발자가 직접 코딩을 하는 것 다운 캐스팅을 하려면 개발자가 직접 책임을 지고 명시적 형변환을 통해 수행해야 합니다. 다음 예시로 업캐스팅을 거쳐 다운캐스팅을 해봅시다 public void testDownCasting(ArrayList list) { for(int i =0; i
IS-A 관계 (is a relationship : inheritance) 일반적인(general) 개념과 구체적인(specific) 개념과의 관계 상위 클래스 : 하위 클래스보다 일반적인 개념 ex) Employee 하위 클래스 : 상위 클래스보다 구체적인 개념들이 더해짐 ex) Engineer, Manager... 상속은 클래스간의 결합도가 높은 설계 상위 클래스의 수정이 많은 하위 클래스에 영향을 미칠 수 있다 계층구조가 복잡하거나 hierarchy가 높으면 좋지 않다 HAS-A 관계 (composition) 클래스가 다른 클래스를 포함하는 관계(변수로 선언) 코드 재사용의 가장 일반적인 방법 Student가 Subject를 포함하는 Library를 구현할 때 ArrayList를 생성하여 사용한다 ..
멤버십 시나리오 회사에서 고객 정보를 활용한 맞춤 서비스를 하기 위해 일반고객(Customer)과 이보다 충성도가 높은 우수고객(VIPCustomer)에 따른 서비스를 제공하고자 한다. 물품을 구매 할 때 적용되는 할인율과 적립되는 보너스 포인트의 비율이 다름 여러 멤버십에 대한 각각 다양한 서비스를 제공할 수 있다 멤버십에 대한 구현을 클래스 상속을 활용하여 구현해 보자! 일반 고객(Customer) 클래스 구현 고객의 속성 : 고객 아이디, 고객 이름, 고객 등급, 보너스 포인트, 보너스 포인트 적립비율 일반 고객의 경우 물품 구매시 1%의 보너스 포인트 적립 1

클래스 상속 새로운 클래스를 정의 할때 이미 구현된 클래스를 상속(inheritance)받아서 속성이나 기능을 확장하여 클래스를 구현한다 이미 구현된 클래스보다 더 구체적인 기능을 가진 클래스를 구현해야 할 때 기존 클래스를 상속한다 상속하는 클래스 : 상위 클래스, parent class, base class, super class 상속받는 클래스 : 하위 클래스, child class, derived class, subclass 상속의 문법 class B extends A{ } extends 키워드 뒤에는 단 하나의 클래스만 올 수 있다. 자바는 단일 상속(single inheritance)만을 지원한다. 상속을 구현 하는 경우 상위 클래스는 하위 클래스보다 더 일반적인 개념과 기능을 가진다 하위 클..
- Total
- Today
- Yesterday
- java
- Downcasting
- 자바 조건문 if else
- 자바 반복문 for문
- 중첩반복문
- 자바 프로그래밍이란
- 스프링 로깅
- java란
- 자바 연산자 우선순위
- 자바 조건문 if else if문
- java 기초
- 다운캐스팅
- 자바 if else if else
- 자바 if if
- 스프링 로그
- java 프로그래밍이란
- 자바의 기초
- 조건문
- 반복문
- Switch Case
- 자바 반복문
- 자바
- 데이터베이스 null
- if if
- 스프링 logging
- 반복문 break continue
- 객체지향이란
- 자바 do while
- 자바 switch case
- if else if
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |