JAVA/Effective JAVA

[μ΄νŽ™ν‹°λΈŒ μžλ°”] Item02 μ™„λ²½κ³΅λž΅. μžλ°”λΉˆ(JavaBean)

초보보 ν˜œμ§„ 2023. 1. 6. 16:53
728x90

 

item02. μƒμ„±μžμ— λ§€κ°œλ³€μˆ˜κ°€ λ§Žλ‹€λ©΄ λΉŒλ”λ₯Ό κ³ λ €ν•˜λΌ. 

" p15. μžλ°”λΉˆμ¦ˆ"

 

 

μžλ°”λΉˆ(Java Bean) μ΄λž€? 

"A Java Bean is a reusable software component that can be manipulated visually in a builder tool" 

Java Bean은 λΉŒλ” λ„κ΅¬μ—μ„œ μ‹œκ°μ μœΌλ‘œ μ‘°μž‘ν•  μˆ˜μžˆλŠ” μž¬μ‚¬μš© κ°€λŠ₯ν•œ μ†Œν”„νŠΈμ›¨μ–΄ κ΅¬μ„±μš”μ†Œλ‹€. 

-> (주둜 GUIμ—μ„œ) μž¬μ‚¬μš© κ°€λŠ₯ν•œ μ†Œν”„νŠΈμ›¨μ–΄ μ»΄ν¬λ„ŒνŠΈ 

 

 

μžλ°”λΉˆ(Java Bean) 이 μ§€μΌœμ•Ό ν•˜λŠ” κ·œμ•½ 

- μžλ°”λΉˆμ€ μΈμžκ°€ μ—†λŠ” κΈ°λ³Έ μƒμ„±μž(default constructor)λ₯Ό κ°–λŠ”λ‹€. 
- 클래슀의 ν”„λ‘œνΌν‹°λ“€μ€ Getter/Setter λ₯Ό 톡해 μ ‘κ·Όν•  수 μžˆμ–΄μ•Ό ν•œλ‹€. 
- Serializable μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•΄μ•Ό ν•œλ‹€. 

 

public class NutritionFacts implements Serializable
{
    private static final long serialVersionUID = 1L;
    private  int servingSize;  // (mL, 1 회 μ œκ³΅λŸ‰)     ν•„μˆ˜
    private  int servings;     // (회, 총 n회 μ œκ³΅λŸ‰)    ν•„μˆ˜
    private  int calories;     // (1회 μ œκ³΅γ„·λŸ‰λ‹Ή)       선택
    private  int fat;          // (g/1회 μ œκ³΅λŸ‰))       선택
    private  int sodium;       // (mg/1회 μ œκ³΅λŸ‰)       선택
    private  int carbohydrate; // (g/1회 μ œκ³΅λŸ‰)        선택

    public NutritionFacts() {
    }

    public void setServingSize(int servingSize) {
        this.servingSize = servingSize;
    }

    public void setServings(int servings) {
        this.servings = servings;
    }

    public void setCalories(int calories) {
        this.calories = calories;
    }

    public void setFat(int fat) {
        this.fat = fat;
    }

    public void setSodium(int sodium) {
        this.sodium = sodium;
    }

    public void setCarbohydrate(int carbohydrate) {
        this.carbohydrate = carbohydrate;
    }
    
    public int getServingSize()
    {
        return servingSize;
    }
    
    public int getServings()
    {
        return servings;
    }
    
    public int getCalories()
    {
        return calories;
    }
    
    public int getFat()
    {
        return fat;
    }
    
    public int getSodium()
    {
        return sodium;
    }
    
    public int getCarbohydrate()
    {
        return carbohydrate;
    }
}

 

πŸ’Œ

μ΄λŸ¬ν•œ μžλ°”λΉˆ 슀팩 μ€‘μ—μ„œ getter,setterκ°€ 주둜 μ‚¬μš©λ˜κ³  μžˆλŠ”λ° κ·Έ μ΄μœ λŠ”  JPAλ‚˜ μŠ€ν”„λ§κ³Ό 같은 μ—¬λŸ¬ ν”„λ ˆμž„μ›Œν¬μ—μ„œ λ¦¬ν”Œλ ‰μ…˜μ„ 톡해 νŠΉμ • 객체의 값을 μ‘°νšŒν•˜κ±°λ‚˜ μ„€μ •ν•˜κΈ° λ•Œλ¬Έμ΄λ‹€. 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90