개발 일기

[JAVA] 1. 객체와 클래스

yjhan1999 2025. 3. 11. 23:49
  • 클래스로 객체 모델링하기
    • 사용자 정의 자료형
      • 정수, 실수, 문자의 자료형 → int, float, string
      • 책, 회원, 영화의 자료형은 → ? ⇒ 사용자 정의 자료형
      • Ex) BookDTO, MemberDTO, MovieDTO ⇒ 새로운 자료형으로 만들었다
      💡 객체(Object) : 이질적인 구조 (↔ 배열은 동일한 구조) = Model = 덩어리(Value Object) = 이동(Data Transfer Object)
    • 클래스
      • 접근 제어자 : public(접근 가능), private(접근 불가)
      • Ex) DTO 클래스 코드
      pakage ~~. // package 선언문
      
      public class Person {
      	// 객체(object) = 상태정보(멤버변수) + 행위정보(멤버메서드)
      	public String name;
      	public int age;
      	public String phone;
      	public void play() {
      		System.out.println("운동을 한다.");
      	}
      	public void eat() {
      		System.out.println("음식을 먹다");
      	}
      	public void walk() {
      		System.out.println("걷다");
      	}
      }
    • 💡 클래스 : 객체를 설계하는 도구(새로운 자료형을 만드는 도구이다) + 현실 세계에 있는 객체를 객체 지향 프로그램에 사용하기 위해 객체의 상태정보와 행위정보를 뽑아서 설계하는 도구
    • 객체 생성 과정
      • 모델링 된 객체를 사용하기 위해서는 메모리에 객체를 생성해야 한다.
      Ex ) Person P = new Person();
      • 생성자 메서드(Constrctor)
        • new 연산에 의해서 호출됨
        • 자신이 가지고 있는 멤버들을 메모리에 올려 객체 생성하는 역할
        • 메서드 이름 = 클래스 이름
        • public인 경우만 호출됨
        • 모든 클래스는 기본생성자 가지고 있음
        • 객체 초기화 위해 사용됨
      • this : 자신을 가리키는 객체변수(참조변수, 포인터변수)