[java]Class설계02

eunu·2024년 1월 29일
0

JAVA

목록 보기
2/21

클래스 설계02

학생 정보를 저장한다는 것을 전제로 예시를 들어보겠습니다.

  • 이름 : String name
  • 나이 : int age
  • 성별 : boolean gender
  • 학번 : int id

[추상화]

  • 공통된 변수, 메서드의 내용을 정의하는 것
  • 이름을 사용용도에 맞도록 알아보기 쉽게 정해야 함.
    • 학생 -> 학생에 관련된 정보를 추려서 -> 정의(이름, 내용)
  • 공통된 기능을 뽑아서 정의하는 것
    • 원하는 기능 등을 위해 정보를 정의하는 것이 추상화
      • 기능 : 학생 정보 출력, 학생 성적 개선

생성자

클래스를 생성할 때 기본적으로 실행되는 것
때문에 초기화 용도로 많이 사용됨
생성자가 없으면 컴파일러가 자동으로 추가해 줌

좋은 클래스 구성요소

  1. 멤버변수(필드, 인스턴스 변수)
    1. private로 데이터 정보 은닉
  2. getter / setter (값 읽기 / 값 쓰기)
  3. toString 메서드 재정의
    1. 멤버변수 내용 출력용도
  4. 기본 생성자
  5. 생성자 오버로딩
    1. 매개변수로 값을 받아서 멤버변수 초기화하는 기능
  • 이름은 같은데, 매개변수의 자료형 / 개수가 다른 생성자 or 매서드를 또 만드는 것
    • 생성자 오버로딩 예시
public class OrderInfo {
	private String customerName;
	private String orderDate;
	private String itemId;
	private String address;
	private String customerNumber;
	
//기본 생성자
	public OrderInfo() {}
	
//추가 매개변수 존재하는 생성자
	public OrderInfo(String customerName, String orderDate, String itemId, String address, String customerNumber) {
		// this. : 현재 해당 메소드가 속한 객체를 가리킴
		this.customerName =customerName;
		this.orderDate = orderDate;
		this.itemId = itemId;
		this.address = address;
		this.customerNumber = customerNumber;
		System.out.println("생성자 호출");
		System.out.println(this);
	}

클래스의 구성

  • 필드(field) = 멤버변수
  • 메서드(mettod)
  • 생성자(constructor)
profile
Just Do It

0개의 댓글