개발동
참조변수와 인스턴스의 연결 본문
부모클래스 타입의 참조변수가 자식 클래스의 인스턴스를 참조했을때,
부모&자식 내에 이름이 같은 멤버변수나 함수가 있을 경우
멤버함수의 경우 : 참조변수는 자식 인스턴스의 함수를 따라감
(Overriding 되어, 무조건 참조한 자식 인스턴스의 메서드로 적용됨)
멤버변수의 경우 : 참조변수의 데이터 타입을 따라감
(참조변수의 데이터 타입에 따라 달라짐)
class Parent
{
int x = 100;
void method() {
System.out.println("Parent");
}
}
class Child extends Parent
{
int x = 200;
void method() {
System.out.println("Child");
}
}
public class BindingTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
Parent p = new Child();
Child c = new Child();
System.out.println(p.x); //Child
p.method(); //100
System.out.println(c.x); //Child
c.method(); //200
}
}
class Parent
{
int x = 100;
void method() {
System.out.println("Parent");
}
}
class Child extends Parent{}
public class BindingTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
Parent p = new Child();
Child c = new Child();
System.out.println(p.x); //Parent
p.method(); //100
System.out.println(c.x); //Parent
c.method(); //100
}
}
'Programming > Java' 카테고리의 다른 글
java, class, bc 파일 (0) | 2022.06.28 |
---|---|
[예제] 여러 종류의 객체를 배열로 다루기 (0) | 2021.09.26 |
상속 (0) | 2021.09.26 |
Calendar 클래스 (0) | 2021.09.23 |
난수 생성 (0) | 2021.09.23 |