손영배 블로그 누구나 쉽게 이해하고 습득하기
객체 지향 프로그래밍의 특징 본문
캡슐화, 상속(extends), 다형성(타입변환, 인터페이스의 타입변환)
나는 분명히 개념을 까먹을것이고 또한 작은 기능들을 지금은 이해를 했지만 잊을 것이다 나중에 그런 때가 온다면 어떻게 정리를 해놓으면 금방 이해가 될까?
캡슐화를 한다는건 필드,메소드를 하나로 묶고 (뭘로? 클래스로) 실제 내용 구현 내요을 감추는 것 (뭘로? 접근제한자 로 public protected private default)
상속 : 부모클래스의 필드나 메소드를 자식이 물려 받는것. 자식이 부모를 선택한다. Java는 다중상속이 없다.
상속의 키워드는 extends 이다. implements 랑 많이 헷갈리지만 implements는 인터페이스와의 관계를 나타낸다.
- 상속을 했을 때 부모의 생성자가 있다면 자식 생성자에도 부모 생성자에 대한 필드 값을에 대해 만들어줘야 하며,
- 상속을 했으니까 부모의 메소드를 사용할 수 있지만 당현히 재정히 @Overring도 가능하다. 접근제한자? 이름 리턴타입, 매개변수가 같다. 이렇게 재정의된 메소드가 호출된다. (하지만 재정의 당한 부모 메소드도 부를 있었던가??)
다형성 (영어로 하면 폴로노미알) 이런게 유식하게 말하면 된다.
별거 없다. 상속관계에서 혹은 인터페이스 관계에서 부모클래스 변수명 = new 자식A(); , 부모클래스 변수명 = new 자식B(); 인터페이스클래스명 변수명 = new 구현클래스(); 이렇게 하나의 객체에 다양하게 타입변환이 가능한것을 말한다.
'Web' 카테고리의 다른 글
웹공부2 WAS (Web Application Server) (0) | 2019.06.14 |
---|---|
HTTP에 S가 붙은 HTTPS 는 어떤 용도로 사용되는 건가요? HTTP와 무엇이 다른가요? (0) | 2019.06.14 |
웹공부1 (0) | 2019.06.14 |
에라토스테네체 (0) | 2019.05.30 |
Java 어노테이션 @Annotation (0) | 2019.05.12 |