[TIL] 6월 23일]

김동규·2023년 6월 24일
0

자바의 객체 공부 보충

Spring을 공부하면서 객체를 이해하지 못한 나머지, 어떤 구조로 구동이 되는 것인지 알 수 없어서 자바로 돌아가 다시 공부를 진행했다.

필드 선언 및 생성자 호출


다른 클래스에서 Car 클래스의 객체를 생성해서 사용하기 위해서는 Car클래스와 이름이 동일한
public Car () {} 로 기본 생성자를 만들어 준다.

다만, Class 안에서 생성자가 없다면 Java에서 public Car () {}을 선언하지 않아도 기본 생성자를 만들어준다.

생성자는 여러개를 만들 수 있다. 생성자가 2개 이상인 경우 이를 생성자 오버로딩이라고 한다.

Ex.
// 기본 생성자
public Car() {}

// 매개변수가 있는 생성자
public Car(String model, String name) {
this.model = model;
this.name = name;
}

매개변수가 있는 생성자를 호출하려면 타입에 맞는 값을 줘야 한다. 이후 생성자 this를 통해서 값을 저장한다.

인터페이스

2개의 클래스에서 같은 매서드를 실행할때 이를 인터페이스를 만들어서 정의 할 수 있다.

정의하는 방법은 클래스명의 오른쪽에 implements + "인터페이스명" 을 적어서 선언한다.


현재 BeveragePartTime 클래스와 hallPartTimer의 경우 greet와 work 매서드가 있다.
여기서 인사는 둘 다 동일하게 할 것이므로 인터페이스에서 정의를 하고

work 매서드의 경우 하는 일이 다르기 때문에 Interface에서 매서드를 만들어 놓기만 하고 직접 구현하고자 하는 내용은 해당 클래스에서 구현한다.

오늘 공부 정리 및 알게 된 것

  1. 매서드의 선언 및 호출방법에 대해 알 수 있었다.
  2. 기본형 매개변수 -> 기본형 변수의 값을 복사해준다 -> 변수의 값을 읽기만 한다(Read), 참조형 매개변수 -> 변수의 주소를 복사해준다 -> 변수의 값을 읽는 것 뿐만 아니라 변경이 가능 (Read & Write)
  3. 클래스 안의 중복되는 매서드들의 경우 Interface를 통해 묶어서 간결하게 정리할 수 있다.
profile
안녕하세요~

0개의 댓글