1. ์ ์
์์ ํด๋์ค๊ฐ ๋ถ๋ชจ ํด๋์ค์ ๋ชจ๋ ๊ฒ๋ค์ ๊ฐ์ ธ์ค๋ ๊ฒ.
*์ฐ๋ ์ด์
ํด๋์ค๋ง๋ค ์ค๋ณต๋๋ ๋ด์ฉ์ด ์๋๋ฐ ๊ฐ์ ๋ด์ฉ์ ํญ์ ๋๊ฐ์ด ์ด๋ค๋ฉด ์ค๋ณต์ฑ์ด ์ฌํด์ ธ์ ํจ์จ์ฑ์ด ์ ํ๋๋ค.
๋ฐ๋ผ์ ๋ถ๋ชจ ํด๋์ค์ ์ด๋ฏธ ์๋ ๋ด์ฉ์ ์์์ ์ ์ธํ ์์ ํด๋์ค์์ ์ ์ธ ์ ํ๋๋ผ๋ ์ธ ์ ์๊ฒ ์กฐ์นํ ๊ฒ ์ด๋ค.
2. ์ฌ์ฉ๋ฒ
//๋ถ๋ชจ class
public class Camera {
public String name;
// ๋ถ๋ชจ ํด๋์ค
public Camera() {
this.name = "์นด๋ฉ๋ผ";
}
public void takePicture() {
// ์ฌ์ง ์ดฌ์
System.out.println(this.name + ": ์ฌ์ง์ ์ดฌ์ํฉ๋๋ค.");
}
public void recordVideo() {
// ๋์์ ๋
นํ
System.out.println(this.name + ": ๋์์์ ๋
นํํฉ๋๋ค.");
}
}
// ์์ ํด๋์ค
// name, takePicture, recordVideo ๋ชจ๋ ์ฌ์ฉ ๊ฐ๋ฅ
public class FactoryCam extends Camera {
public FactoryCam() {
this.name = "๊ณต์ฅ ์นด๋ฉ๋ผ";
}
public void detectFire() {
//ํ์ฌ ๊ฐ์ง
System.out.println("ํ์ฌ๋ฅผ ๊ฐ์งํฉ๋๋ค.");
}
}
0