练习作业

【上机作业】【java】2010.4.7 接口的练习

题目1. 学校中有教师和学生两类人,而在职研究生既是教师又是学生。设计两个接口studentinterface和teacherinterface。其中,studentinterface接口包含setFee()getFee()方法,分别用于设置和获取学生的学费;teacherinterface接口包含setPay()和getPay()方法,分别用于设置和获取教师的工资。
    定义一个研究生类graduate,实现studentinterface接口和teacherinterface接口,它的成员变量有name,sex,age,fee,pay。
 创建一个姓名为“zhangsan”的研究生,统计他的年收入和学费,如果收入减去学费不足2000元,则输出“provide a loan”(需要贷款)信息。
 要求:在graduate中实现各个接口定义的抽象方法。

import java.util.Scanner;
interface studentinterface{
abstract void setFee();
abstract void getFee();
}

interface teacherinterface{
abstract void setPay();
abstract void getPay();
}

class graduate implements studentinterface,teacherinterface {
 String name;
 String sex;
 int age;
 double fee;
 double pay;
 graduate(String n,String s,int a){
 name=n;
 sex=s;
 age=a;
 }
 public void setPay(){
 Scanner s=new Scanner(System.in);
 System.out.print(“Set pay:”);
 pay=s.nextDouble();
 }
 public void getPay(){
 System.out.println(“pay=”+pay);
 }
 public void setFee(){
 Scanner s=new Scanner(System.in);
 System.out.print(“Set Fee:”);
 fee=s.nextDouble();
 }
 public void getFee(){
 System.out.println(“fee=”+fee);
 }
}
class display{
 public static void main(String []args){
 graduate g=new graduate(“zhangsan”,”m”,25);
 g.setPay();
 g.setFee();
 if(g.pay*12-g.fee<2000)
  System.out.println(“provide a loan”);
 }
}

题目2:以员工类为父类,经理、工人均继承该类,创建经理类和工人类,输出经理和工人的工资。在父类中编写getSalary()方法,并在子类中覆盖,实现多态。
功能要求
对单位职工进行抽象。创建三个类:员工类、经理类、工人类。
重写父类的方法,并用父类的引用指向子类的对象,实现多态。

abstract class staff{
 double Salary;
 staff(double s){
 Salary=s;
 }
 void getSalary(){
  System.out.println(“staff Salary:”+Salary);
 }
}
class Manager extends staff{
 Manager(double s){
 super(s);
 }
 void getSalary(){
  System.out.println(“Manager Salary:”+Salary);
 }
}
class worker extends staff{
 worker(double s){
 super(s);
 }
 void getSalary(){
  System.out.println(“worker Salary:”+Salary);
 }
}

class display2{
  public static void main(String []args){
 Manager m=new Manager(5000.0);
 worker w=new worker(4000.0);
 m.getSalary();
 w.getSalary();
 }
}


题目3: 以汽车为例,创建汽车接口,卡车(truck)和吊车均(crane)实现该接口。吊车可以吊起货物,卡车可以载货。

interface car{
 abstract void run();
}

class truck implements car{
 public void run(){
 System.out.println(“truck run”);
 }
 public void load(){
 System.out.println(“truck load”);
 }
}

class crane implements car{
 public void run(){
 System.out.println(“crane run”);
 }
 public void sling(){
 System.out.println(“truck sling”);
 }
}

class display3{
 public static void main(String []args){
 truck t=new truck();
 crane c=new crane();

 t.run();
 t.load();
 System.out.println(“———————–“);
 c.run();
 c.sling();
 }
}

发表评论

电子邮件地址不会被公开。 必填项已用*标注