Junior
What is the difference between a regular object and a JavaBean?
sobes.tech AI
Answer from AI
The difference lies in adhering to naming conventions (capital letter after "get/set/is") for property access methods, having a no-argument constructor, and serializability. This allows JavaBeans to be used with frameworks and tools based on introspection.
A regular object may not follow these rules.
public class SimpleObject {
private String name;
public SimpleObject(String name) { // Any constructor
this.name = name;
}
public String retrieveName() { // Non-standard naming for getter
return name;
}
}
import java.io.Serializable;
public class JavaBean implements Serializable { // Serializable
private String name;
public JavaBean() { // No-argument constructor
}
public String getName() { // Standard getter naming
return name;
}
public void setName(String name) { // Standard setter naming
this.name = name;
}
}
Key differences:
| Criterion | Regular object | JavaBean |
|---|---|---|
| No-arg constructor | Not mandatory | Mandatory |
| Method naming | Any | get/set/is + property name |
| Serializability | Not mandatory | Recommended/Mandatory for some frameworks |
| Usage | General purpose | Component model, frameworks (Spring, formerly EJB) |