fork download
  1. class Person {
  2. // Encapsulation: Private fields
  3. private String name;
  4. private int age;
  5.  
  6. // Constructor: Initializes object when created
  7. public Person(String name, int age) {
  8. this.name = name;
  9. this.age = age;
  10. }
  11.  
  12. // Encapsulation: Getter and Setter methods
  13. public String getName() {
  14. return name;
  15. }
  16.  
  17. public void setName(String name) {
  18. this.name = name;
  19. }
  20.  
  21. public int getAge() {
  22. return age;
  23. }
  24.  
  25. public void setAge(int age) {
  26. if (age > 0) { // Encapsulation ensures age is positive
  27. this.age = age;
  28. }
  29. }
  30.  
  31. public void display() {
  32. System.out.println("Name: " + name + ", Age: " + age);
  33. }
  34.  
  35. public static void main(String[] args) {
  36. // Constructor initializes object
  37. Person p1 = new Person("Alice", 25);
  38.  
  39. // Encapsulation: Accessing private fields via getter/setter
  40. p1.setAge(30);
  41. System.out.println("Updated Age: " + p1.getAge());
  42.  
  43. // Display details
  44. p1.display();
  45. }
  46. }
  47.  
Success #stdin #stdout 0.17s 57928KB
stdin
Standard input is empty
stdout
Updated Age: 30
Name: Alice, Age: 30