일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 웹퍼블리셔
- 무료호스팅
- 자바키워드
- 우편번호 API
- 무료 호스팅
- 자바스크립트
- php
- 마우스 오른쪽 버튼
- 무료
- postcodify
- 홈페이지제작
- 무료사이트
- 새우편번호
- php호스팅
- 호스팅
- 무료홈페이지
- 무료제작
- 웹호스팅
- 무료 홈페이지 제작
- 무료 홈페이지
- 웹퍼블리싱
- 글자뒤집기
- 무료 웹 호스팅
- 클릭해제
- 마우스오른쪽
- 무료서버
- 퍼빌리셔
- 문자열 뒤집기
- 복사방지
- 우체국 우편번호
Archives
- Today
- Total
Developer Factory
27. JAVA 상속 본문
* 상속
-> 기존 코드를 재사용
1] Specialization : 위에서 아래로 상속
Car
Sedan Truck
2] Generalization : [A] - [B] 공통적인 내용을 뽑아서 슈퍼클래스를 정의하는 것
public class Episode01 {
static class Car {
String name = "자동차";
int cc = 1998;
public Car (){
// super(); // 자동으로 붙는다.즉, Object의 생성자 호출.
System. out.println( "Car()...");
name = "자동차하하" ;
cc = 2000;
}
public void start(){
System. out.println( "출발한다.");
}
public void run() {
System. out.println( "가속한다.");
}
public void stop(){
System. out.println( "멈춘다.");
}
}
static class Truck extends Car {
int weight = 15000;
public Truck (){
/* super 클래스의 생성자 호출
* - 이 문장 이전에 다른 명령이 와서는 안된다.
*/
//int i = 0; // 수퍼 클래스의 생성자 호출 전에 오면 오류!
super(); // 생략하면 자동의로 붙는다. 모든 생성자는 반드시 있다.
System. out.println( "Truck()...");
weight = 10000;
}
public void dump(){
System. out.println( "집을 내리다." );
weight = 0;
}
}
public static void main( String[] args) {
/* new Truck()
* instance 생성 단계
* 1) super 클래스를 찾아서 로딩 -> Car.class
* 2) 생성 하려는 클래슬 찾아서 로딩 -> Truck.class
* 3) super 클래스의 인스턴스 변수 준비 -> name, cc
* 4) 해당 클래스의 인스턴스 변수 준비 -> weight
* 5) super의 인스턴스 변수 초기화 문장을 수행 name="자동차", cc=1998
* 해당 클래스의 인스턴스 변수 초기화 문장 수행 weight=15000
* 6) Track() 생성자 호출 -> super()클래스의 Car()호출 -> super()클래스의 Object()호출
* -> 실행 => Car 실행(초기화실행) -> Truck 실행(초기화실행) -> 완료!.
*/
Truck t = new Truck();
System. out.println( t. name);
System. out.println( t. cc);
System. out.println( t. weight);
System. out.println( "완료!");
t.dump();
t.start();
t.run();
}
}
'Developer > Java' 카테고리의 다른 글
29. JAVA 객체간의 관계 with UML (0) | 2014.07.03 |
---|---|
28. JAVA AWT의 hierarchy (0) | 2014.07.03 |
26. JAVA JavaWindow Programming (0) | 2014.07.03 |
25. JAVA Buffer (0) | 2014.07.03 |
24. JAVA binary 스트림과 character 스트림의 비교 (0) | 2014.07.03 |