728x90
반응형
728x90
반응형

자바의 특징인 객체지향프로그래밍(OOP : Oriented Object Programming)의 특성에는

캡슐화(Encapsulation), 상속성(Inheritance), 다형성(Polymorphism)이 있습니다.


1) 캡슐화  

 -데이터와 데이터를 다루는 방법(조작)을 묶는 것입니다.

 -클래스 내부 정의에 대해 외부에서 볼 수 없는 것이 특징입니다.

  클래스의 접근 권한을 결정하는 접근 지정자를 사용하여 구현합니다.

  접근 지정자에는 (public > protected > default > private ) 접근 허용 순입니다.

 -캡슐화의 예를 들자면 알약은 캡슐로 되어있기에 약의 내용물을 알 수 없습니다.


2) 상속성 

 -하나의 클래스(부모 클래스)가 갖는 특징(데이터+ 조작)들을 다른 클래스(자식 클래스)가 물려받는 것입니다.

 -상위 클래스에서 정의한 속성을 재사용하여 개발 속도를 높이기 위해 만들었습니다.

 -상속을 이용하면 하위 클래스는 상위 클래스의 모든 연산과 메소드를 자신의 클래스에 다시 정의하지 않고도

  자신만의 메소드로 구현가능합니다.


3) 다형성 

 -상속성의 계층을 따라 각각의 클래스에 동일한 이름의 메소드를 사용할 수 있는 것입니다.

 -하나의 인터페이스를 이용하여 다양한 구현을 제공하여 개발의 효율성을 높입니다.


Human human;
human = new Singer();
human.eat();

human = new Programmer();
human.eat();

human = new Dancer();
human.eat();

-사람의 직업은 다양하지만 모든 사람은 먹는 행동을 하기에 동일한 eat()메소드를 사용할 수 있다는 뜻입니다.

728x90
반응형
728x90
반응형

+ Recent posts