객체지향 (3) 썸네일형 리스트형 [JAVA] 객체지향(3) Abstract Class(추상 클래스) 자식 클래스에서 반드시 부모 클래스의 메서드를 재정의 해서 사용하기 때문에 부모 클래스에서의 메서드 구현이 무의미한 상황 -> 함수에 대한 정의는 있어야 하는데 몸통은 필요 없을 경우 abstract 사용. abstract 메서드는 abstract 클래스에만 있을 수 있다. 부모 클래스에서 해당 메서드의 선언부만 남기고 구현부는 세미콜론(;)으로 대체 abstract 키워드를 메서드 선언부에 추가 (구현부가 없다는 의미) abstract 키워드를 클래스 선언부에 추가 (객체를 생성할 수 없는 클래스라는 의미) 추상 클래스의 특징 - abstract 클래스는 상속 전용 클래스이다. - 객체를 생성할 수는 없지만 자식 클래스를 참조할 수는 있다. - 부모 클래스에서 .. [JAVA] 객체지향 (2) Inheritance(상속) : 기존 클래스의 필드, 메서드를 자식 클래스에서 재사용하기 위한 것 - 생성자, 초기화 블록(static, instance)는 상속하지 않는다. 유지 보수에 유리 extends 키워드를 사용 · 컴파일 시점 extends가 없으면 컴파일러가 extends Object 붙여서 실행 - Object Class 는 모든 Class의 부모 클래스 상속 (is a 관계) : 자식 클래스 is a 부모 클래스 - 위 첨부 사진에서 SpiderMan is a Person. 자바는 단일 상속만 지원 ※ 다중 상속 효과를 원한다면 1) interface 또는 2) 포함 관계(has a)로 구현 가능 포함 has a 관계 public class SpiderMan2 extends Person{.. [JAVA] 객체 지향 (1) 객체 지향 프로그래밍 객체 : 사물, 주변에 있는 모든 것 인천의 당근걸이 부천의 영화관에 방문해서 팝콘을 주문하기 위해 필요한 객체는 총 5개이다. 객체 지향 프로그래밍의 장점 - 신뢰성 높은 프로그래밍 가능 - 코드 재사용 - 유지보수 유리 속성과 기능을 추상화하여 클래스 정의 -> new 키워드를 통해 구체화 → 자바세계에서 활동 가능한 객체 (object, instance) 생성 ˙ 객체는 heap 메모리에 생성 (new를 사용해 생성한 것은 모두 heap 영역에 생성) 클래스 : 객체를 정의한다. 클래스 사용을 위해 객체를 생성해야 한다. 객체 : 클래스를 구체화, 실제로 사용 가능하다. 클래스를 데이터타입으로 해서 메모리에 생성한다. JVM 메모리 구조 - Class 영역 : 프로그램이 run.. 이전 1 다음