객체지향(OOP)

  • 객체지향의 특징 4가지(상속, 다형성, 은닉화, 추상화)
  • 상속
    • 재정의
      • 오버라이드
    • 다형성
    • 확장
      • extends
    • is a
  • 다형성
    • 메소드
      • 오버로드,오버라이드
    • 클래스
      • 형변환
  • 은닉화
    • private
  • 추상화
    • abstract
      • 구현부를 생략
      • 상속시 구현 강제
      • class, method에 abstract로 선언
    • 인터페이스
      • 다중 상속가능
        • extends로 다른 인터페이스 구현
      • implements로 인터페이스 구현

객체 class의 구성

  • 멤버변수
    • 상태, 속성
    • class의 변수들
  • 멤버메소드
    • 기능, 행위
    • class의 메소드들
  • 클래스를 데이터 타입으로 메모리에 생성하면 인스턴스(instance)라고 한다.

JAVA의 메모리

  • class area
    • 클래스의 원형
  • method stack
    • 메서드들의 실행공간
    • 스레드별로 별도관리
  • heap
    • 객체를 저장하는 영역
    • gc만이 제어
    • 스레드