this 2

자바 25강. Super

자바에서는 super(키워드)가 부모, this가 자신을 뜻한다. this : 자기 자신의 heap 메모리 공간 클래스를 new 하기 전에 나중에 메모리에 뜰 heap 공간을 가리킨다는 말이다. 그럼 new를 하는 시점에 this는 메모리에 뜬 내 heap공간을 가리키게(바인딩) 된다. super : this와 마찬가지로 클래스를 new하기 전에 나중에 메모리에 뜰 부모의 heap 공간을 가리킨다는(바인딩) 말이다. + super는 extends를 했을 때만 사용이 가능하다. 자식을 new할때 상속되어있는 부모도 같이 메모리에 뜨고 부모의 생성자도 실행된다. 부모가 디폴트 생성자가 아닌 매개변수를 받는 생성자일 때 오류가 생긴다. 이때는 생성자 오버로딩을 해줘야 오류가 잡힌다. 실행하면 그냥 디폴트 생성..

JAVA 2022.01.20

자바 14강. 생성자

[복습] 객체지향 1원칙 (OOP를 잘 짜는 방법) 상태는 행위에 의해 변경된다. 오브젝트 = 실존할 가능성이 있는 것 클래스 = 이상적인 설계도(선언만 함) 인스턴스 = 실재하는 것 메서드(함수) = 함수가 실행되면 스택이 열린다.(메서드마다) class A { int num = 15; 함수명 ( ) { int num = 10; sysout("결과 : " + num); } } 변수는 항상 자기와 가까운 것부터 찾는다. // 결과 : 10 프로그램을 작성할 때 홀로 작동하는 객체는 거의 유용하지 않다. 객체는 메시지(message)를 통해 다른 객체와 통신하고 서로 상호 작용한다. 이때 메시지는 메서드를 호출하는 행위를 말한다. 메시지에는 추가적인 정보들이 필요할 때도 있다. 이런 정보들은 메시지의 매개..

JAVA 2022.01.13