[자바/JAVA] 객체 지향 프로그래밍

이나영·2022년 2월 13일
0

문법 - Java

목록 보기
2/7
post-thumbnail

객체 지향 프로그래밍(OOP)?

객체 지향 프로그래밍(OOP : Object-Oriented Programming)이란 현실 세계에서 어떤 제품을 만들 때 부품을 먼저 개발하고 이 부품들을 하나씩 조립해서 제품을 완성하듯이 소프트웨어를 개발할 때도 부품에 해당하는 객체를 먼저 만들고 그 객체를 하나씩 조립해서 완성된 프로그램을 만드는 기법이다.

🔰객체란?

물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있으면서 식별 가능한 것


객체의 구성

  • 속성 : 필드(field)
  • 동작 : 메소드(method)

객체의 상호작용

        ↗메소드 호출↘

사람(객체1)       전자계산기(객체2)

         ↖결과 리턴↙

리턴값 = 전자계산기객체.메소드(매개값1, 매개값2, ... );

int result = Calculator.add(10, 20)

// result = 30;

객체와 클래스

  • 클래스(class) : 메모리에서 사용하고 싶은 객체가 있을 때 설계도를 이용하여 객체를 만든다. 이때, 설계도가 클래스에 해당한다.
  • 인스턴스(instance) : 클래스로부터 만들어진 객체를 해당 클래스의 인스턴스라고 한다.

객체 지향 프로그래밍의 개발 세가지 단계

  • 1단계 : 클래스 설계
  • 2단계 : 설계된 클래스를 가지고 사용할 객체 생성
  • 3단계 : 생성된 객체 사용

클래스 선언

식별자 작성 규칙

  • 하나 이상의 문자
  • 첫 글자 숫자 금지
  • '$', '_' 외의 특수 문자 사용 금지
  • 자바 키워드는 사용 불가
  • 일반적으로 클래스는 각 단어의 첫 글자를 대문자로 작성

✔️컴파일 시 클래스의 개수만큼 바이트 코드 파일(.class)도 생성된다.
✔️public 접근 제한자는 파일 이름과 동일한 이름의 클래스 선언에만 붙일 수 있다. 따라서 소스 파일 하나당 동일한 이름의 클래스 하나를 선언하는 것이 좋다.


객체 생성과 클래스 변수

new 클래스();

  • new : 클래스로부터 객체를 생성시키는 연산자
  • 클래스() : new 연산자 뒤에 오는 생성자
  • new 연산자로 생성된 객체는 메모리 힙(heap) 영역에 생성

클래스 변수 = new 클래스();


클래스의 구성 멤버

  • 필드 : 객체의 고유 데이터, 부품 객체, 상태 정보를 저장
  • 생성자 : 생성자는 new 연산자로 호출되는 특별한 중괄호 {} 블럭. 객체 생성 시 필드를 초기화 하거나 메소드를 호출해서 객체를 사용할 준비를 함
  • 메소드 : 객체의 동작에 해당하는 중괄호 {} 블럭
public calss ClassName {
	// 필드
    int fieldname;
    
    // 생성자
    ClassName() { ... }
    
    // 메소드
    void methodName() { ... }
}



👀참고자료 : <혼공자> 책

profile
소통하는 백엔드 개발자로 성장하기

0개의 댓글