1.第11章 11.5实做程序:教材P132 第2题:
在前面章节完成的Worker类基础上进行修改,添加计算工人年收入的重载方法。计算年收入有两个方法,第一个方法是保底工资+年工时单价;第二种方法是固定月工资12.设计测试类Main,分别使用两种方法计算工人的年收入。
要点提示:
(1)第一个方法参数有:保底工资、年工时、单价,三个参数。
(2)第二个方法参数有:月固定工资,一个参数
(3)在测试类中输入保底工资、年工时、单价和月固定工资,输出对应的年收入。
(4)保底工资、年工时、单价、月固定工资均为int类型
输入提示为:
请输入保底工资、年工时和单价:
请输入月固定工资:
输入的数据值为:
10000
2000
40
6500
输出结果为:
第一种方式的年收入是:90000
第二种方式的年收入是:78000
import java.util.Scanner;
class Worker{
private String name;
private int age;
private int salary;
private String level;
private TableInfo table;
public Worker(String name,int age,int salary,String level,TableInfo table){
this.name=name;
this.age=age;
this.salary=salary;
this.level=level;
this.table=table;
this.table.setOwne(this);
}
public Worker(){
}
public int nianshouru(int baodi,int gongshi,int danjia){
return (baodi+(gongshi*danjia));
}
public int nianshouru(int yuegongzi){
return yuegongzi*12;
}
public int getSalary(){
return salary;
}
public String getName(){
return name;
}
public void display(){
}
}
class TableInfo{
private String tshape;
private Worker owne;
public TableInfo(String tshape){
this.tshape=tshape;
}
public void setOwne(Worker owne){
this.owne=owne;
}
public Worker getOwne(){
return owne;
}
public String getTshape(){
return tshape;
}
public void print(){
owne.display();
//System.out.println("""我的桌子:"+tshape);
}
}
public class Main{
public static void main(String [] args){
int baodi;
int gongshi;
int danjia;
int yuegongzi;
int gongzi1=0;
int gongzi2=0;
Scanner sc=new Scanner(System.in);
System.out.println("请输入保底工资、年工时和单价:");
baodi=sc.nextInt();
gongshi=sc.nextInt();
danjia=sc.nextInt();
System.out.println("请输入月固定工资:");
yuegongzi=sc.nextInt();
TableInfo table=new TableInfo("圆形");
Worker fanshio=new Worker("张工",25,6000,"初级",table);
Worker fanshit=new Worker();
gongzi1=fanshio.nianshouru(baodi,gongshi,danjia);
gongzi2=fanshit.nianshouru(yuegongzi);
System.out.println("第一种方式的年收入是:"+gongzi1);
System.out.println("第二种方式的年收入是:"+gongzi2);
table.print();
}
}
2.设计类。在类定义中通过重载方法分别计算球体和圆柱体的体积。在测试类中调用,显示计算结果。
要点提示:
(1)定义两个重载的方法计算体积。
(2)第一个方法的参数为球半径r,该方法计算球体的体积。计算球体积的公式是:(4/3.0)3.14rrr,
(3)第二个方法的参数为底半径r和高度h,该方法计算圆柱体的体积。圆柱体体积公式是:3.14rr*h
(4)调用第一个方法时,球半径的值10
(5)调用第二个方法时,底半径的值为10,高为8
(6)程序没有输入提示!
输出结果是:
半径为10的球体积是:4186.666666666667低半径为10,高为8的圆柱体积是:2512.0
class Wuti{
public Wuti(){
}
public double tiji(int r){
return (4/3.0)*3.14*r*r*r;
}
public double tiji(int r,int h){
return 3.14*r*r*h;
}
}
public class Main{
public static void main(String [] args){
int r=10;
int h=8;
Wuti qiuti=new Wuti();
Wuti yuanzhuti=new Wuti();
System.out.println("半径为"+r+"的球体积是:"+qiuti.tiji(r));
System.out.println("低半径为"+r+",高为"+h+"的圆柱体积是:"+yuanzhuti.tiji(r,h));
}
}