WEB/JAVA / / 2021. 9. 14. 23:10

[JAVA] 객체 지향 프로그래밍 (OOP)

객체 지향 프로그래밍 (OOP : Object Oriented Programming)

프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법


객체 지향 프로그래밍의 특징
  • 상속성
  • 다형성
  • 추상화
  • 캡슐화
  • 은닉화
클래스와 객체
  • 클래스 : 객체의 설계도, 객체를 정의해 놓은 것
  • 객체 : 실제로 존재하는 것, 사물 또는 개념, 무형의 객체
  • 인스턴스 : 클래스로부터 만들어진 객체를 그 클래스의 인스턴스라고 한다.
  • 인스턴스화 : 클래스로부터 객체를 만드는 과정

객체의 구성요소
  • 속성(property) = 멤버 변수 = 필드(field)
  • 기능(function) = 멤버 함수 = 메서드(method)
클래스를 설계하는 과정
  1. 객체의 요구 분석
  2. 객체의 구성요소 파악 -> 목록 작성
  3. 클래스 선언 (정의, 설계)
  4. 객체 생성 + 테스트
  5. 문제점 파악 -> 유지, 보수
  6. 상용화
  7. 기능 추가, 문제점 보완 - 버전 관리
클래스 선언 형식
[접근지정자] [기타제어자] class 클래스명 [extends 부모클래스] [implements 인터페이스...] {

}

클래스 선언시 접근지정자 종류
  • public : 패키지 내부/외부 어디서든 상속과 참조 가능
  • default : 패키지 내부에서만 상속과 참조 가능
  • protected : 패키지 내부에서만 상속과 참조 가능, 패키지 외부에서는 상속만 가능
  • private : 같은 파일 내에서만 상속과 참조 가능
클래스 앞에 붙는 기타제어자
  • abstract : 추상(abstract) 클래스
  • final : 최종 클래스
  • static (비활성화) : 정적(static) 클래스
클래스 -> 객체 생성하는 방법 (형식)
클래스자료형 변수명 = new 클래스자료형();

필드 선언 형식
[접근지정자] [기타제어자] 자료형 변수명[=초기값];

멤버변수 (필드) 선언시 접근지정자 종류
  • public : 패키지 내부/외부 어디서든 참조 가능
  • default : 패키지 내부에서만 참조 가능
  • private : 클래스 내부에서만 참조 가능
  • protected : 패키지 내부에서만 참조 가능 + 상속 자식클래스에서 참조 가능
멤버 앞에 붙는 기타제어자 설명
  • static : 정적 필드, 정적 메서드
  • final : 상수 필드, 재정의 X 메서드
  • transient
  • volatile
반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유