
106年公務人員特種考試警察人員、一般警察
人員考試及106年特種考試交通事業鐵路
人員、退除役軍人轉任公務人員考試試題 代號:80850 全五頁
第四頁
考試別: 鐵路人員考試
等別: 員級考試
類科別: 資訊處理
科目: 程式設計概要
public class SalariedEmployee extends Employee
{ p
rivate double weeklySalary;
public SalariedEmployee( String n, double salary )
{ super( n );
setWeeklySalary( salary );
}
public void setWeeklySalary( double salary )
{ if ( salary >= 0.0 )
weeklySalary = salary;
else
throw new IllegalArgumentException( "Weekly salary must be >= 0.0" );
}
public double getWeeklySalary()
{ return weeklySalary;
}
@Override
public double earnings()
{ return getWeeklySalary();
}
// end method earnings
@Override
public String toString()
{ return String. format( "salaried employee: %sn%s: $%,.2f",
super.toString(), "weekly salary", getWeeklySalary() );
} // end method toString
} // end class SalariedEmployee
public class PayrollSystemTest
{ public static void main( String[] args )
{ // create subclass objects
SalariedEmployee salariedEmployee = new SalariedEmployee( "Smith", 800.00 );
HourlyEmployee hourlyEmployee = new HourlyEmployee( "Price", 16.75, 40 );
System.out.println( "Employees processed ind ividually:n" );
System.out.printf( "%sn%s: $%,.2fnn",
salariedEmployee, "earned", salariedEmployee.earnings() );
System.out.printf( "%sn%s: $%,.2fnn",hourlyEmployee, "earned", hourlyEmployee.earnings() );
Employee[] employees = new Employee[ 2 ];
employees[ 0 ] = salariedEmployee;
employees[ 1 ] = hourlyEmployee;
for ( Employee currentEmployee : employees )
{ S
ystem.out.println( currentEmployee );
System.out.printf( "earned $%, .2fnn", currentEmployee.earnings() );
} // end for
} // end main
} // end class PayrollSystemTest
(請接第五頁)