[Java] Getter/Setter,Lombok

6656 단어 JavaSpringJava

1. Getter/Setter

private String name;
private int price;
private int count;


public string GetName() { return name; } // {}는 한줄로 줄이면 보기좋다.
public void SetName(string name) { name = name; }

public string GetPrice() { return price; }
public void SetPrice(string price) { price = price; }

public string GetCount() { return count; }
public void SetCount(string count) { name = count; }

왜 굳이 private으로 변수를 생성하고 get/set을 이용해 데이터에 접근할까?

이는 데이터 무결성을 지키기 위함이다.
만약 음식의 가격, 갯수가 음수가 온다면 데이터 형식에 맞지 않기 때문에 get/set 함수 내에서 무결성을 지켜주어야한다.

▶ 무결성
데이터의 정확성과 일관성을 유지하고 보증하는 것
ex) 물건의 가격은 음수일 수 없다. -> (price > 0)

  // set 함수를 통해 무결성 지키기
public void SetPrice() { 
  if(price >= 0) {
	  price = price; 
  } else {
  	  throw new IllegalArgumentException("가격은 음수가 될 수 없습니다.");
}

2.Lombok

단축키를 통해 get/set을 쉽게 만들 수 있고, 무결성을 지킬 수 있지만, 변수가 많고 지킬 무결성이 없을 수 있다.

이럴 때 Lombok을 사용하면 get/set 함수를 직접 작성하지 않아도 사용이 가능하다.

<!-- Lombok -->
<!-- version : https://projectlombok.org/download -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.20</version> <!--버전은 그때 맞춰서-->
</dependency>  
// Lombok 사용 예시
import lombok.Data;
  
@Data
private String name;
private int price;
private int count;

좋은 웹페이지 즐겨찾기