abstract class Worker { public final int BASE=1000; protected int salary; abstract public int getSalary(); } abstract class Peon extends Worker {} class Boss extends Worker { public int getSalary() { return BASE*5; } } class Owner extends Boss { public int getSalary() { return BASE*10; } } class StudentWorker extends Peon { public int getSalary() { return BASE*2; } } class FullTimeWorker extends Peon { public int getSalary() { return BASE*3; } } public class abstract0 { public static void main(String[] args) { Worker[] p = { new StudentWorker(), new FullTimeWorker(), new Boss(), new Owner() }; for (int i = 0; i < p.length; i++) { System.out.print(p[i].getClass()); System.out.println(": "+p[i].getSalary()); } } }