OOP 3

OOP - 3

1. abstract class 정의 자손 클래스에서 반드시 재정의해서 사용되기 때문에 조상의 구현이 무의미한 메서드 메서드의 선언부만 남기고 구현부는 세미콜론으로 대체 구현부가 없다는 의미로 abstract키워드를 메서드 선언부에 추가 객체를 생성할 수 없는 클래스라는 의미로 클래스 선언부에 abstact를 추가한다. abstract 클래스는 상속 전용의 클래스 클래스에 구현부가 없는 메석드가 있으므로 객체를 생성할 수 없다. 하지만 상위클래스 타입으로써 자식을 참조할 수는 있다. 조상 클래스에서 상속 받은 abstract 메서드를 재정의 하지 않은 경우 클래스 내부에 abstract 메서드가 있는 상황이므로 자식 클래스는 abstract 클래스로 선언되어야 함 추상 클래스를 사용하는 이유 abstra..

OOP - 2

1. 상속 객체지향 언어의 특징 OOP is A.P.I.E 특성 내용 Abstraction(추상화) 현실의 객체를 추상화 해서 클래스를 구성한다. Polymorphism(다형성) 하나의 객체를 여러 가지 타입으로 참조할 수 있다. Inheritance(상속) 부모 클래스의 자산을 물려받아 자식을 정의함으로 코드의 재사용이 가능하다 Encapsulation(데이터 은닉과 보호) 데이터를 외부에 직접 노출시키지 않고 메소드를 이용해 보호할 수 있다. 상속(Inhritance: Java Is A PIE) 기존 클래스의 자산(멤버)을 자식 클래스에서 재사용하기 위한 것 부모의 생성자와 초기화 블록은 상속하지 않는다 기존 클래스의 멤버를 물려 받기 때문에 코드의 절감 부모의 코드를 변경하면 모든 자식들에게도 적용..

OOP - 1

1. 객체지향 프로그래밍이란? Object Oriented Programming 객체란? 주체가 아닌 것, 주체가 활용하는것 우리 주변에 있는 모든 것으로 프로그래밍의 대상 객체지향 프로그래밍 주변의 많은 것들을 객체화 해서 프로그래밍 하는 것 객체지향 프로그래밍의 장점 블록 형태의 모듈화된 프로그래밍 신뢰성 높은 프로그래밍이 가능하다 추가/수정/삭제가 용이하다 재 사용성이 높다 2. 클래스 클래스 객체를 정의해 놓은 것, 즉 객체의 설계도 , 틀 클래스는 직접 사용할 수 없고 직접 사용되는 개체를 만들기 위한 틀을 제공할 뿐 객체 클래스를 데이터 타입으로 메모리에 생성된 것 객체들은 모두 클래스에서 선언된 속성을 가짐 객체 별로 다른 상태 값을 가짐 객체 생성과 메모리 JVM의 메모리 구조 클래스 영역..