public String getDuty() { return duty; } public void setDuty(String duty) { this.duty = duty; } public int getHolidays() { return holidays; }
public void setHolidays(int holidays) { this.holidays = holidays; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; }
public void setName(String name) { this.name = name; } public float getSalary() { return salary; } public void setSalary(float salary) { this.salary = salary; } public byte getSex() { return sex; } public void setSex(byte sex) { this.sex = sex; } /**
* display(),无返回值,该方法能打印员工的姓名、性别以及职务 * @param employee */
public void display(Employee employee){
System.out.println(\员工姓名为: \ if(employee.getSex()==1){
System.out.println(\员工性别为: 男 \ }else if(employee.getSex()==2){
System.out.println(\员工性别为:女 \ }
System.out.println(\员工职务为: \ } /**
* getDecMoney(int day) 返回值是int型。
* 如果请假天数<=3,则扣款为30×请假天数;
* 如果请假天数超过3天,则扣款为50×请假天数。 * @param day * @return */
public int getDecMoney(int day){ int deduction = 0; //扣除的工资 if(day <= 4){
deduction = 30*day; }else if(day > 4){ deduction = 44*day; }
return deduction; }
public static void main(String[] args){ //创建一个员工类的对象
Employee employee = new Employee(123456789,(byte) 1,\的\生产帽子的(color)\
employee.display(employee); //调用display()
int deduction = employee.getDecMoney(employee.getHolidays());//调用getDecMoney()
System.out.println(\该员工因请假扣除工资\元\ } }
结果:
编程
1. 用JAVA编写程序实现将给定字符串(“how are you!“)逆转(类似一维数组逆转),然后输出逆转后的结果。 public class Reverse {
public static void main(String[] args) {
StringBuffer s=new StringBuffer(\ System.out.println(\逆转前为:\
System.out.println(\逆转后为:\ }
public StringBuffer reverse(StringBuffer s) {
return s.reverse(); } }
运行结果:
2. 写出一个Tri(三角形)类,该类具有x,y,z(表示三个边的长)3个属性,并定义两个个构造方法,一个无参数,将x,y,z均设置为0.0,另一个有参数,设置x,y,z为给定。定义求面积方法。 /**
* @author: fww * 一个三角形类, */
class Triangle
{
//无参构造器 public Triangle() { x=0.0; y=0.0; z=0.0; }
//带参构造器
public Triangle(double x,double y,double z) { this.x=x; this.y=y; this.z=z; }
//计算面积
public double getArea() { double p=(x+y+z)/2.0;
area=Math.sqrt(p*(p-x)*(p-y)*(p-z)) ; return area; }
public static void main(String[] args) { Triangle tri_one=new Triangle(); System.out.println(\面积:\ Triangle tri_two=new Triangle(3.0,4.0,5.0); System.out.println(\面积:\ }
//私有属性
private double x;//边长 private double y; private double z;
private double area;//面积 }
运行结果:
3. 银行存取款多线程编程:取款getbankMoney()时,要判断余额不足;存款setbankMoney()时,限制一次存款额为1.1万元;存款和取款不能同时进行,即要实现线程同步。
/** *
* @author :fww
* 银行存取款多线程编程 */
public class TestBank{
public static void main(String[] args){ String s1=\ String s2=\ Bank bank=new Bank(s1,s2); Thread save_Money; Thread get_Money; save_Money=new Thread(bank); get_Money=new Thread(bank); save_Money.setName(s1); get_Money.setName(s2); save_Money.start(); get_Money.start();//启动线程 } }
class Bank implements Runnable{
public Bank(String s1,String s2){ this.s1=s1; this.s2=s2; }
public void run(){ saveBankMoney(11000);//存款额规定为11000 getBankMoney(5000);//取款5000 }
//同步方法,实现存款
public synchronized void saveBankMoney(double save_money){ if(Thread.currentThread().getName().equals(s1)){ for(int i=1;i<3;i++){ if (save_money==11000){ this.money+=save_money; try{ Thread.sleep(2000);//休眠
} catch(InterruptedException ex ){ ex.printStackTrace(); } System.out.println(\我要存款:\ System.out.println(\存款成功!帐号目前余额为:\ } } } }
//同步方法,实现取款
public synchronized void getBankMoney(double get_money){ if(Thread.currentThread().getName().equals(s2)){ for(int i=1;i<3;i++){ if(money>=get_money){ this.money=this.money-get_money; try{ Thread.sleep(2000);//休眠 } catch(InterruptedException ex){ ex.printStackTrace(); } System.out.println(\我要取款:\ System.out.println(\取款成功!帐号目前余额为:\ } else{ System.out.println(\帐号余额不足!\ } } } }
private double money=10000.0;//帐号初始额为10000 private String s1; private String s2; }
运行结果:
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Java复习试卷(2)在线全文阅读。
相关推荐: