본문 바로가기

접근제어자

(2)
[JAVA] 기초문법 - 상속과 다형성(2) 접근 제한자 정리 상속에서 클래스 생성 과정 super은 상위클래스를 가르킴. 모든 자바 클래스의 최상위 클래스는 object 클래스이다. 상속에서 메모리 상태 만약에 상위클래스에 private 변수가 있다면, 메모리에 생성은 되지만 하위 클래스에서 접근 할 수가 없는 것. 상위 클래스의 생성자가 디폴트가 아닌 매개변수가 있는 생성자인경우. 예시) 이런경우 하위클래스에서 오류가 발생함. ㅡ> 컴파일러가 자동으로 super()키워드를 삽입해주지만 super()은 디폴트 생성자를 의미하기 때문. 즉, 하위클래스 생성자에서 super(매개변수); 를 명시적으로 호출해야함. super 예약어 상위 클래스로의 묵시적 형 변환(업캐스팅) 모든 하위 클래스는 상위클래스의 일종이다. 따라서 업캐스팅이 가능하다. 하지만..
[JAVA] 기초문법 - 상속과 다형성(1) 상속과 다형성 상속의 목표: 상속을 사용하면 다형성을 구현할 수 있다. 다형성은 객체지향프로그래밍(JAVA)에 가장 큰 장점이다. 유지보수하기 용이하다. 유연한 프로그래밍이 가능하다. 상위 클래스가 하위클래스를 상속한다. 라고 표현 하위클래스는 상속받았다.라고 표현 화살표는 하위클래스 ㅡ> 상위클래스로 표현 상속을 설명할때 재사용이라는 개념이 자주 사용되는데, 재사용은 상속을 정확히 대변하는 것은 아니다. 일반적인 의미, 구체적인 의미를 가진다는 표현이 더 정확하다. 재사용의 개념은 크게 2가지로 나뉜다. 1.상속(is -a 관계) ex) 일반적인 클래스에서 기능의 확장으로 구체적인 클래스를 만들기 위해서 사용. 상속 예시 2.합성(has-a 관계) ex) b클래스에서 a클래스의 변수를 활용하고 싶을때 ..