728x90
반응형
1. 메인 클래스
public class Main {
public static void main(String[] args) {
Computer myCom = new Computer();
USBDisk myDisk = new USBDisk();
myCom.insert(myDisk); // USB usb=myDisk
USBWifi myWifi = new USBWifi();
myCom.insert(myWifi); // USB usb=myWifi
USBFan myFan = new USBFan();
myCom.insert(myFan); // USB usb=myFan
}
}
2. 하위 클래스
class Computer {
void insert(USB usb) {
usb.connect();
}
}
class USB {
void connect() {
System.out.println("USB 연결");
}
}
class USBDisk extends USB {
@Override
void connect() {
System.out.println("Disk 연결");
}
}
class USBWifi extends USB {
@Override
void connect() {
System.out.println("Wifi 연결");
}
}
class USBFan extends USB {
@Override
void connect() {
System.out.println("Fan 연결");
}
}
728x90
반응형
'즐거운프로그래밍' 카테고리의 다른 글
[자바] extends 문 활용한 예제 (Game) (1) | 2023.10.17 |
---|---|
[자바] extends, showInfo 문 활용한 예제 (0) | 2023.10.17 |
[자바] 상속 extends와 private 함수를 사용한 예제 2 (0) | 2023.10.17 |
[자바] 상속 extends와 private 함수를 사용한 예제 1 (0) | 2023.10.17 |
[자바] 클래스 메서드 오버로딩(overloading) (0) | 2023.10.17 |