Java Bean和POJO是兩種常見的Java編程概念,它們都是Java對象的表示方式,但是在一定程度上又有所不同。
Java Bean是一種符合特定編程規范的Java對象,它是指那些具備無參構造器、屬性私有且有對應的getter和setter方法的Java對象,而且Java Bean應該是可序列化的。Java Bean最初是為了方便Swing組件的使用而提出的,隨著時間的推移,Java Bean逐漸被應用到各個領域。Java Bean的編寫需要遵循Java Bean規范,通常使用IDE工具自動生成Java Bean。
public class Person{ private String name; private int age; public Person(){} public String getName(){ return name; } public void setName(String name){ this.name = name; } public int getAge(){ return age; } public void setAge(int age){ this.age = age; } }
POJO(Plain Old Java Object)是指簡單的Java對象,它是一種不需要遵守特定編程規范的Java對象,它可以包含任意屬性、方法和構造器,不需要繼承特定的父類或實現特定的接口,也沒有限定訪問權限和組合關系。實際上,Java Bean也是一種POJO,但與普通的POJO相比,Java Bean需要遵守一定的規范,具有更多的約束條件。
public class Student{ private String name; private int age; public Student(){} public String getName(){ return name; } public void setName(String name){ this.name = name; } public int getAge(){ return age; } public void setAge(int age){ this.age = age; } public void study(){ System.out.println("I am studying."); } }
總的來說,Java Bean是POJO的一種特定實現,它更強調規范和約定,而POJO則更注重輕量級、靈活性和簡單性。