🌱 오늘의 주제 : 다형성: 사용편의성
🌱 오버라이딩? 오버로딩?
- 오버라이딩 - 재정의 : 상위클래스의 메서드와 같은 메서드 이름, 같은 인자 리스트
- 오버로딩 - 중복정의 : 같은 메서드 이름, 다른 인자 리스트
- 상위 클래스 타입의 객체 참조 변수를 사용하더라고 하위 클래스에서 오버라이딩(재정의) 한 메서드가 호출된다.
🌱 캡슐화: 정보 은닉
- private - 본인만 접근 가능
- [default] - 같은 패키지 내의 클래스에서 접근 가능
- proteced - 상속 / 같은 패키지 내의 클래스에서 접근 가능
- public - 모두가 접근 가능
- 상속을 받지 않았다면 객체 멤버는 객체를 생성한 후 객체 참조 변수를 이용해 접근해야 한다.
- 정적 멤버는 클래스명.정적멤버 형식으로 점근하는 것을 권장한다.
🌱 참조 변수의 복사
- 기본 자료형 변수는 값을 값 자체로 판단한다.
- 참조 자료형 변수는 값을 주소, 즉 포인터로 판단한다.
- 기본 자료형 변수를 복사할 때, 참조 자료형 변수를 복사할 때 일어나는 일은 같다. 즉, 가지고 있는 값을 그대로 복사해서 넘겨 준다.
🌱 느낀점
접근 제어자에서 protected에 관한 글을 읽고 보안에 관해서 다시 한번 생각 하는 시간이 되었다. protected는 보안이 많이 될거라고 무심히 생각했지만, 저자가 말하길, 다른 파일에 같은 패키지 이름이 있으면, 그 패키지 내의 클래스나 public 멤버 등의 객체까지 자유롭게 접근할 수 있다고 상기 시켰다. 이런 부분을 들으니, 나중에 개발자가 되고 나서 protected의 보안을 생각하면서 코드를 구현해야겠다는 생각이 들었다.
'Spring > Book - 스프링 입문을 위한 자바 객체 지향의 원리와 이해' 카테고리의 다른 글
04. 자바가 확장한 객체 지향 (2) (0) | 2023.03.24 |
---|---|
04. 자바가 확장한 객체 지향 (1) (0) | 2023.03.17 |
03. 자바와 객체 지향(2) (0) | 2023.01.27 |
03. 자바와 객체 지향 (1) (0) | 2023.01.17 |
02. 자바와 절차적 / 구조적 프로그래밍 (2) (0) | 2023.01.10 |