본문 바로가기

JAVA/객체 코드

class 기초순서 문제

답이 x=200인 이유는

c.getX()->Child의 Child()->super()생략;적용->Parent()->Parent(200)->getX()->x의 return값

이기 때문이다

public static void main(String[] args) {
	Child c = new Child();
	
	System.out.println("x="+c.getX());
	//me : x=1000
	//답 : x=200
}
    -------------------------------------------------
public class Parent {
	int x=100;
	Parent() {
		this(200);//2
	}
	Parent(int x) {
		this.x = x;//1
	}
	int getX() {
		return x;	
	}
}
------------------------------------------------------
public class Child extends Parent {
	int x = 3000;
	Child() {
		this(1000);//4
	}
	Child(int x) {
		this.x = x;//3
	}
}

'JAVA > 객체 코드' 카테고리의 다른 글

스타크래프트 (정답)  (0) 2020.06.03
final Class  (0) 2020.06.03
static  (0) 2020.06.03
상속(4) instanceOf  (0) 2020.06.03
상속(3) 형변환, 배열// (다형성)  (0) 2020.06.03