Java

[Java] 객체(Object), Class, Method

Bay Im 2024. 3. 13. 21:25

객체(Object)

  • 객체 지향 프로그래밍
    • OOP (Object Oriented Programming)
    • 부품 객체 먼저 만들고 이것들을 하나씩 조립해 프로그램을 만드는 기법
  • 객체 (Object)
    • 무리적으로 존재하는 것, 속성과 동작을 가지는 것
    • 객체는 필드(속성)과 메소드(동작)로 구성된 객체로 모델링 가능
  • 객체간의 관계
    • 집합 관계
      • 완성품과 부품의 관계
    • 사용 관계
      • 객체가 다른 객체를 사용하는 관계
    • 상속 관계
      • 종류 객체와 구체적인 사물 객체 관계
  • 객체와 클래스
    • 클래스에는 객체를 생성하기 위한 필드와 메소드가 정의되어 있다.
    • 클래스로부터 만들어진 객체를 해당 클래스의 인스턴스(instance)라고 한다.
    • 하나의 클래스로부터 여러개의 인스턴스를 만들 수 있다.
      • 클래스가 붕어빵 틀이라면, 객체는 만들어지는 붕어빵들..
      • 객체(Object) = 클래스의 인스턴스(instance)
  • 절자지향과 객체지향
    • 절차지향형 프로그래밍
      • 순서에 맞추어 단계적으로 실행하도록 명령어를 나열
    • 객체지향형 프로그래밍
      • 객체를 구성하고 객체 단위로 프로그래밍 (필드, 메서드)

 

Class

  • 클래스 이름 규칙
    • 필수
      • 첫번째 글자는 숫자가 올 수 없다.
      • $, _ 외 특수문자 사용 불가
      • 자바 키워드 사용불가
    • 관례
      • 다른 단어의 첫글자는 대문자로 작성
      • 한 소스 파일당 하나의 클래스 선언
  • new 연산자
    • 객체 생성 역할, 생성 후 객체생성 번지 리턴
    • new 클래스(); 의 형태
      • 클래스()는 생성자를 호출하는 코드
      • 생성된 객체는 Heap 메모리 영역에 생성
  • 객체의 생성
    • 클래스 변수 = new 클래스(); 형태
  • 클래스의 구성 멤버
    • 필드 (Field)
      • 객체의 데이터가 저장되는 곳
      • ex) int fieldName;
    • 생성자 (Constructor)
      • 객체 생성시 초기화 역할
      • ex) ClassName() { … }
    • 메소드 (Method)
      • 객체의 동에 해당하는 실행 블록
      • ex) void methodName() { … }

 

Method

  • 메서드의 구조
    • 접근지정자 객체생성없이사용 리턴타입 메서드이름 (매개변수) { 메서드 내용 }
      • ex) public static int sum(int a, int b) { … }
  • 메서드 오버로딩
    • 메서드의 이름이 같지만 매개변수의 데이터 타입과 개수를 다르게 함으로써 함수의 기능을 확장하는 것
  • Getter/Setter
    • Getter
      • private 필드의 값을 리턴하는 역할
      • getFieldname() 형식
    • Setter
      • 외부에서 주어진 값을 필드 값으로 수정
      • setFieldName(타입변수) 형식

'Java' 카테고리의 다른 글

[Java] 접근 제어자, 생성자, 싱글톤 패턴  (0) 2024.03.13
[Java] static, void, this  (0) 2024.03.13
[Java] Array  (0) 2024.03.13
[Java] 임의의 정수 출력 방법  (0) 2024.03.11
[Java] 제어문  (0) 2024.03.11