자바

가언·2024년 7월 3일

✅ 자바에서 값을 대입하는 방법

  1. 필드에 직접 대입 ➡️ 보안에 취약, 누구나, 언제나 접근 가능
  2. 메소드에 대입 ➡️ 누구나, 언제나 접근 가능한 것은 여전함, setter 함수로 입력값에 대한 검증 로직 추가 가능
  3. 생성자로 대입 ➡️ 객체 생성할 때만 접근 가능하기 때문에 보안/언제나 보완 가능 but, 생성자 인자의 순서가 바뀌어도 오류를 잡지 못함

public class Car {
    private String color;
    private int year;
    
    // 생성자
    public Car(String color, int year) {
        this.color = color;
        this.year = year;
    }
}


Car myCar = new Car("Blue", 2023);   // 이 경우는 정상적으로 동작합니다
Car myCar = new Car(2023, "Blue");   // 이 경우는 컴파일 오류를 발생시키지 않습니다
1)  기본 생성자가 존재
2) 하나의 생성자라도 만들어지면 기본 생성자는 사라짐
3) 반환타입이 없다.
  1. 빌더로 대입: build().setName("songa").setAge(20);

✅ 오버로딩

메소드 이름이 같고, 매개변수(개수, 타입)가 다르면 생성자를 여러 개 만들 수 있게 해줌!! = 생성자 오버로딩
Q. 오버라이딩이랑 비교할 거리가 있긴 한가요?
Q. 생성자는 메소드인가요?

✅ 오버라이딩

✅ 갤럭시, 아이폰 클래스

printLogo(): Samsung/@@@Apple@@@
trunOn():
- 갤럭시: Samsung 핸드폰이 켜졌습니다.
- 아이폰: @@@ Apple @@@ 핸드폰이 켜졌습니다.
trunOff():
갤럭시 & 아이폰 공통: 띠로띠로

✅ 클린코드: 메소드 명명법

  1. 동사로 시작하는 것이 좋다
    (동사는 가능한 가장 쉬운 것이 좋다.)
  2. 프로젝트 또는 클래스 내에서는 동사의 의미가 같다면 단어를 통일한다.
    (ex. 조회: select, find, get, search, ...)
  3. 메소드는 가능한 추출해내야 한다. = 메소드는 코드에 확신을 줍니다.
profile
@gari_guri

0개의 댓글