今日习题练习:
第1题
案例:
声明员工类Employee,包含属性:编号、姓名、年龄、薪资,
声明Test01测试类,并在main方法中,创建2个员工对象,并为属性赋值,并打印两个员工的信息。
package com.han1;
public class Employee {
private int bianHao;
private String xingMing;
private int nianLing;
private float xinZi;
public void show() {
System.out.println("员工"+bianHao+"的编号:"+bianHao+",姓名:"+xingMing+",年龄:"+nianLing+",薪资:"+xinZi);
}
public int getBianHao() {
return bianHao;
}
public void setBianHao(int bianHao) {
this.bianHao = bianHao;
}
public String getXingMing() {
return xingMing;
}
public void setXingMing(String xingMing) {
this.xingMing = xingMing;
}
public int getNianLing() {
return nianLing;
}
public void setNianLing(int nianLing) {
this.nianLing = nianLing;
}
public float getXinZi() {
return xinZi;
}
public void setXinZi(float xinZi) {
this.xinZi = xinZi;
}
}
package com.han1;
public class Test1 {
public static void main(String[] args) {
Employee e1=new Employee();
e1.setBianHao(1);
e1.setXingMing("张三");
e1.setNianLing(23);
e1.setXinZi(10000);
e1.show();
Employee e2= new Employee();
e2.setBianHao(2);
e2.setXingMing("李四");
e2.setNianLing(22);
e2.setXinZi(11000);
e2.show();
}
}
第2题
案例:
声明一个日期类MyDate,包含属性:年、月、日
声明一个Test02测试类,并在main方法中,创建3个日期对象,并打印显示
package com.han2;
public class MyDate {
private int year, month, date;
// 读取器,用于获取对象种的私有属性值
public int getYear() {
return year;
}
// 设置器,用于向对象种传入特定的属性值
public void setYear(int year) {
this.year = year;
}
public int getMonth() {
return month;
}
public void setMonth(int month) {
if (month > 12) {
if (month > 0) {
int y = month / 12;
year += y;
month %= 12;
} else {
int y = month / 12 - 1;
year += y;
month = (-1 * y) * 12 + month;
}
}
this.month = month;
}
public int getDate() {
return date;
}
private int getMaxDate() {
int res = 0;
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
res = 31;
break;
case 4:
case 6:
case 9:
case 11:
res = 30;
break;
case 2:
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
res = 29;
} else
res = 28;
break;
default:
res = 0;
break;
}
return res;
}
public void setDate(int date) {
if (date > 0) {
while (true) {
if (date > getMaxDate()) {
date = date - getMaxDate();
month++;
}
if (getMaxDate() >= date)
break;
}
}
this.date = date;
}
public String show() {
return year + "年" + month + "月" + date + "日";
}
}
package com.han2;
public class Test2 {
public static void main(String[] args) {
MyDate md1 = new MyDate();
md1.setYear(2001);
md1.setMonth(2);
md1.setDate(2);
MyDate md2 = new MyDate();
md2.setYear(2010);
md2.setMonth(10);
md2.setDate(10);
MyDate md3 = new MyDate();
md3.setYear(2022);
md3.setMonth(7);
md3.