答案
1,c 2,a 3.b 4,d 5.b
6.本程序可利用的方法如下:
GregorianCalendar.get(Calendar.DAY_OF_MONTH)
.get(Calendar.MONTH)
.get(Calendar.DAY_OF_WEEK)
.get(Calendar.DAY_OF_MONTH ,1)
可利用计数循环、条件循环打印月历。
7.程序代码:
Import java.util.*;
Public class ManagerTest1
{
Public static void main(String[] args)
{
Manager boss=new Manager(“Carl Cracker”,80000,1987,12,15);
Boss.setBonus(5000);
Employee[] staff=new Employee[3];
staff[0]=boss;
staff[1]=new Employee(“Harry Hacker”,50000,1989,10,1);
staff[2]=new Employee(“Tommy Tester”,40000,1990,3,15);
for(int i=0; i<=staff.length; i++)
{ Employee e=staff[i];
e.raiseSalery(5); System.out.println(“name”=+e.getName()+”,salary=”+e.getSalary());
}
}
}
class Employee
{
Public Employee(String n, double s, int year, int month, int dat)
{
name=n;
salary=s;
GregorianCalendar calendar=new GregorianCaledar(year, month-1, day);
hireDay=calendar.getTime();
}
public String getName()
{
return name;
}
public double getSalary()
{
return salary;
}
public Date get HireDay()
{
Return hireDay;
}
public void raiseSalary(double byPercent)
{
double raise=salary*byPercent/100;
salary+=raise;
}
private String name;
private double salary;
private Date hireDay;
}
class Manager estends Employee
{
public Manager(String n, double s, int year, int month, int day)
{
super(n, s, year, month, day);
bonus=0 ;
}
public double getSalary()
{
double baseSalary=super.getSalary();
return baseSalary+hours;
}
public void setBonus(double b)
{
bonus=b;
}
private double bonus;
}
程序运行结果为:
D:\code>java ManagerTest1
name=Car1 Cracker,salary=89000.0
name=Harry Hacker,salary=52500.0
name=Tommy Tester,salary=42000.0