λ©μλ μ€λ²λΌμ΄λ©(Overriding)
- μμλ λ©μλλ₯Ό μμ ν΄λμ€μμ μ¬μ μνλ κ²μ΄λ€.
- λ©μλ μ€λ²λ¦¬μ΄λ© μ ν΄λΉ λΆλͺ¨ λ©μλλ μ¨κ²¨μ§κ³ , μμ λ©μλκ° μ°μ μ μΌλ‘ μ¬μ©λλ€.
- λΆλͺ¨ λ©μλμ μ μΈλΆ(λ¦¬ν΄ νμ , λ©μλ μ΄λ¦, 맀κ°λ³μ)μ λμΌν΄μΌ νλ€.
- μ κ·Ό μ νμ λ κ°νκ² μ€λ²λΌμ΄λ©ν μ μλ€.(public → privateμΌλ‘ λ³κ²½ λΆκ°)
- μλ‘μ΄ μμΈλ₯Ό throwsν μ μλ€.
λΆλͺ¨ λ©μλ νΈμΆ
λ©μλλ₯Ό μ¬μ μνλ©΄, λΆλͺ¨ λ©μλλ μ¨κ²¨μ§κ³ μμ λ©μλλ§ μ¬μ©λκΈ° λλ¬Έμ μ€λ²λΌμ΄λ©λ λ©μλμμ μ€λ³΅λ μ½λλ₯Ό μμ±νκ² λ μ μλλ°
μ΄ λ¬Έμ λ μμ λ©μλμμ λ©μλ μ€λ²λΌμ΄λ©ν λ ν΄λΉ λ©μλμ λΆλͺ¨μ λ©μλλ₯Ό νΈμΆνλ©΄λλ€.
( superν€μλμ λνΈ(.)μ°μ°μ μ¬μ© )
public class Airplane {
//λ©μλ μ μΈ
public void land() {
System.out.println("μ°©λ₯ν©λλ€.");
}
public void fly() {
System.out.println("μΌλ° λΉνν©λλ€.");
}
public void takeOff() {
System.out.println("μ΄λ₯ν©λλ€.");
}
}
public class SupersonicAirplane extends Airplane {
//μμ μ μΈ
public static final int NORMAL = 1;
public static final int SUPERSONIC = 2;
//μν νλ μ μΈ
public int flyMode = NORMAL;
//λ©μλ μ¬μ μ
@Override
public void fly() {
if(flyMode == SUPERSONIC) {
System.out.println("μ΄μμ λΉνν©λλ€.");
} else {
//Airplane κ°μ²΄μ fly() λ©μλ νΈμΆ
super.fly();
}
}
}
public class SupersonicAirplaneExample {
public static void main(String[] args) {
SupersonicAirplane sa = new SupersonicAirplane();
sa.takeOff();
sa.fly();
sa.flyMode = SupersonicAirplane.SUPERSONIC;
sa.fly();
sa.flyMode = SupersonicAirplane.NORMAL;
sa.fly();
sa.land();
}
}
κ²°κ³Ό
λ보기
μ΄λ₯ν©λλ€.
μΌλ° λΉνν©λλ€.
μ΄μμ λΉνν©λλ€.
μΌλ° λΉνν©λλ€.
μ°©λ₯ν©λλ€.
μΆμ²:μ΄κ²μ΄ μλ°λ€(κ΅μ‘ νμ₯μμ κ°μ₯ λ§μ΄ μ°μ΄λ JAVA νλ‘κ·Έλλ°μ κΈ°λ³Έμ)
https://search.shopping.naver.com/book/catalog/34238594620?cat_id=50010920&frm=PBOKMOD&query=%EC%9D%B4%EA%B2%83%EC%9D%B4%EC%9E%90%EB%B0%94%EB%8B%A4&NaPm=ct%3Dlocm18y8%7Cci%3D0e64b25f86693278b2d96906cbe4b981fe74c6d5%7Ctr%3Dboknx%7Csn%3D95694%7Chk%3D95e00da716b01b77d749d200eae34c788eb63950
'π Today I Learned(κ°λ°μΈμ΄νμ΅) > JAVA' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[JAVA] instanceof (κ°μ²΄ νμ νμΈ) (0) | 2023.11.27 |
---|---|
[JAVA] μ΄ν΄λ¦½μ€ μ€λ²λΌμ΄λ© λ©μλ μλ μμ± κΈ°λ₯ (0) | 2023.11.22 |
[JAVA] import λ¬Έ μλ μΆκ° κΈ°λ₯ (0) | 2023.11.14 |
[JAVA] κ°λ³κΈΈμ΄ 맀κ°λ³μ (0) | 2023.11.10 |
[JAVA] λ°°μ΄(Array) (0) | 2023.11.09 |