ποΈ Backend/Java
μλ°(Java) - κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ° (8) super, super()
kongmi
2023. 1. 16. 19:28
super
μμ ν΄λμ€κ° λΆλͺ¨ ν΄λμ€λ‘ λΆν° μμ λ°μ νλ(λ©€λ²)λ₯Ό μ°Έμ‘°νλ λ³μ
ν΄λμ€ λ΄μ λ©€λ²λ³μμ μ§μλ³μμ μ΄λ¦μ΄ κ°μ κ²½μ° κ΅¬λΆμ μν΄ this. λ₯Ό μ¬μ©νλ―μ΄
λΆλͺ¨ ν΄λμ€μ μμ ν΄λμ€ μμ±μλ₯Ό ꡬλΆνκΈ° μν΄ μ¬μ©!
import λ€νμ±μμ©1_0116.Product;
public class SuperFieldEx1 {
public static void main(String[] args) {
ChildEx childex = new ChildEx();
childex.childMethod();
}
}
class ParentEx {
int x = 10;
}
class ChildEx extends ParentEx {
int x = 20;
void childMethod() {
System.out.println("x = " + x);
System.out.println("this.x = " + this.x);
System.out.println("super.x = " + super.x);
}
}
super()
λΆλͺ¨ ν΄λμ€μ μμ±μλ₯Ό νΈμΆνλ λ©μλ (μμμ μμ±μ λ΄μμ νΈμΆ)
μμμ μμ±μμμ λΆλͺ¨μ μμ±μλ₯Ό νΈμΆν λλ λ°λμ!!! λΆλͺ¨μ μμ±μλ₯Ό λ¨Όμ νΈμΆνκ³ λ€λ₯Έ μ΄κΈ°ν μ§ν
μμ±μλ₯Ό λ°λ‘ λ§λ€μ§ μμΌλ©΄ κΈ°λ³Έ μμ±μκ° νΈμΆλλ κ² μ²λΌ...
λΆλͺ¨μ μμ±μλ₯Ό λ³λλ‘ λ§λ€μ΄μ£Όμ§ μμΌλ©΄ κΈ°λ³Έμ μΌλ‘ λΆλͺ¨μ μμ±μκ° μλ νΈμΆλ¨.
Parent
class Parent {
int a;
Parent() {
System.out.println("λΆλͺ¨μ κΈ°λ³Έ μμ±μ νΈμΆ");
a = 10;
}
Parent(int n) {
System.out.println("λΆλͺ¨μ μμ±μ νΈμΆ");
a = n;
}
}
Child
class Child extends Parent {
int b;
Child() {
super(200); // superλ μμ μμ±μκ° μ€νλκΈ° μ μ νΈμΆν΄μΌ ν¨.!!!!!!
System.out.println("μμμ μμ±μ νΈμΆ");
b = 20;
}
void display() {
System.out.println(a);
System.out.println(b);
}
}
Main
public class SuperField {
public static void main(String[] args) {
System.out.println("main λ©μλ νΈμΆ");
Child child = new Child();
child.display();
}
}
<μΆλ ₯νλ©΄>
main λ©μλ νΈμΆ
λΆλͺ¨μ μμ±μ νΈμΆ
μμμ μμ±μ νΈμΆ
200
20
λ©μΈ λ©μλ νΈμΆ -> λΆλͺ¨ μμ±μ νΈμΆ -> μμ μμ±μ νΈμΆ μμΌλ‘ νλ‘κ·Έλ¨μ΄ μ€ν