Programing Language/JAVA
객체지향의 특징
doriver
2022. 8. 3. 17:53
추상화(abstraction)
객체들의 공통적인 특징(변수, 메소드)을 도출해서 새로운 클래스(추상크래스, 인터페이스 등등)를 만들수 있다.
캡슐화(encapsulation)
실제로 구현되는 부분을 외부에 드러나지 않도록 하여 정보를 은닉
접근 제어자를 이용한 캡슐화(클래스 내부에 선언된 데이터를 보호하기위해, 외부에는 불필요한, 내부적으로만 사용되는 부분들을 감추기 위해)
상속성(inheritance)
기존의 클래스를 재사용하여, 새로운 클래스를 작성하는것
하나의 클래스가 가진 특징(변수, 메소드)을 다른 클래스가 그대로 물려받는 것
기존 코드를 재활용해서 사용
다형성(polymorphism)
하나의 메서드가 다양한 방법으로 동작하는거 - 오버라이딩(Overriding), 오버로딩(Overloading)
하나의 클래스가 상속을 통해 여러가지 형태로 구현될수 있다
한 타입의 참조변수로 여러 타입의 객체를 참조할수 있다(조상클래스 타입의 참조변수로 자손클래스의 인스턴스를 참조)