public String getDetails() { return String.format("Employee[id=%d,name=%s,salary=%.2f]", id, name, getSalary()); } } File: com/example/work/employee/Manager.java
@Override public double getSalary() { // use super.getSalary() to reference parent behavior return super.getSalary() + bonus; }
public class Main { public static void main(String[] args) { Employee dev = new Employee("Alice", 101, 70000); Manager mgr = new Manager("Bob", 201, 90000, 15000); sup java com work
public class Employee { protected String name; protected int id; protected double baseSalary;
public class Manager extends Employee { private double bonus; public String getDetails() { return String
import com.example.work.employee.Employee; import com.example.work.employee.Manager; import com.example.work.util.Formatter;
public class Formatter { public static String pretty(Employee e) { return e.getDetails(); } } File: com/example/work/Main.java Manager mgr = new Manager("Bob"
package com.example.work;