武科大-java实验答案-全.doc_第1页
武科大-java实验答案-全.doc_第2页
武科大-java实验答案-全.doc_第3页
武科大-java实验答案-全.doc_第4页
武科大-java实验答案-全.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

补充第一节的内容public class MyJavaClass int a; myjavaclass(int a)this.a=a;public void main() myjavaclass c1=new MyJavaClass();System.out.printIn(c1.a);System.out.printIn(程序结束。);1. 上面的程序有几处错误?请依次改正。2. 这个程序的源代码应该保存为什么名字的文件? 3. 请写出编译和运行这个文件的完整命令,注意给出环境变量的设置(假设源文件保存在d:java目录)4. 如果在程序最前面加入下面语句:package Pkg;该程序又该如何编译和运行?答案:答案(1):修改以后的程序为(粗体为修改过的地方)public class MyJavaClass int a; MyJavaClass(int a)this.a=a; public Static void main(String args) MyJavaClass c1=new MyJavaClass(2) /此处的实际参数可为任意整数; System.out.println(c1.a); System.out.println(程序结束。); 答案(2) public class MyJavaClass int a; int myjavaClass(int a)this.a=a;return a;/注此处函数返回值可为任意类型public static void main(String args) MyJavaClass c1=new MyJavaClass(); System.out.println(c1.a);System.out.println(程序结束。); 2、答案:这个程序的源代码应该保存为MyJavaClass.java。 3、答案(1)set class=c:j2sdkbin set classpath=d:java 编译:javac d:javaMyJavaClass.java 运行:java MyJavaClass 答案(2)编译:c:j2sdkbinjavac d:javaMyJavaClass.java set classpath=d:java 运行:java MyJavaClass 4、答案:如果在程序最前面加入语句:package pkg;环境变量同3、设置编译:javac -d . d:javaMyJavaClass.java 运行:java pkg.MyJavaClass I 实验1答案1-(1-1):import java.io.*;class RandomMonthpublic static void main(String args) String months=January,February,March, April,May,June,July, Aguest,September,October, November,December; int i; i = (int)(Math.random() * 12); System.out.println(monthsi); 1-(1-2):import java.io.*;import java.util.*;class RandomMonth2 public static void main(String args) String months=January,February,March, April,May,June,July, Aguest,September,October, November,December; Random r=new Random(); int i; i = Math.abs(r.nextInt()%12; System.out.println(monthsi); 1-(2)import java.util.*;class RandomPx public static void main(String args) int num=new int20; int i,j,temp; Random r=new Random(); for(i=0;i20;i+) numi=r.nextInt(); for(i=0;i19;i+) for(j=0;jnumj+1) temp=numj; numj=numj+1; numj+1=temp; for(i=0;i=School.getscoreLine()| (s.getscore()96 & s.getcomScore()=300) ) return true; else return false; public static void main(String args) Student s=new Student3; String info=new String4; int i,j; String messInfo; BufferedReader in=new BufferedReader(new InputStreamReader(System.in); StringTokenizer st; School.setscoreLine(550); for( i=0;is.length;i+ ) try messInfo=in.readLine(); st=new StringTokenizer(messInfo); for(j=0;jinfo.length;j+) infoj=st.nextToken(); catch(IOException ex) si=new Student(info0,info1,Float.parseFloat(info2),Float.parseFloat(info3); for(i=0;is.length;i+) if(isEnroll(si) System.out.println(+ +si.id + + 被录取!); else System.out.println(+ +si.id + + 没有录取!); 2-(3)思考题:import java.io.*;class Complex double RealPart; double ImageinPart; Complex(double rp,double ip) RealPart=rp; ImageinPart=ip; Complex complexAdd(Complex a) Complex temp; temp=new Complex(RealPart+a.RealPart,ImageinPart+a.ImageinPart); return temp; Complex complexMinus(Complex a) Complex temp; temp=new Complex(RealPart-a.RealPart,ImageinPart-a.ImageinPart); return temp; public String toString() if (ImageinPart0) return (RealPart+-+Math.abs(ImageinPart)+i); else return (RealPart+ImageinPart*+i); class ComplexApp public static void main(String args)char operator; try Complex c1=new Complex(1,2); Complex c2=new Complex(3,4); Complex complexResult; operator=(char)System.in.read(); switch(operator) case +:complexResult=plexAdd(c2);break; case -:complexResult=plexMinus(c2);break; System.out.println(complexResult); catch(IOException e) System.out.println(e); III实验3 答案3-(1)1、class Person public String name;public String sex;int age;Person(String name,String sex,int age)=name; this.sex=sex; this.age=age;class Student extends Personpublic String sno;public int classno;public void updateAge(int age)this.age=age; Student(String name,String sex,int age,String sno,int classno)super(name,sex,age); this.sno=sno; this.classno=classno; public String toString() System.out.println(name=+name+ sex=+sex + age=+age+ sno=+sno+ classno+classno+ ); return name=+name+ sex=+sex + age=+age+ sno=+sno+ classno+classno+ ; ;public class TestStudentpublic static void main(String args)Student s1=new Student(susan,女,20,20031015123,2); s1.updateAge(21); s1.toString();3-(3)import java.util.*;abstract class Employee String name; long no; static long id=1000; abstract double getPay(); Employee(String name) =name;id=id+1; ;class Manager extends Employee double pay=8000;double getPay()return 8000; Manager(String name)super(name); no=id; public String toString()return name:+name+ no:+no+ pay:8000;class Sale extends Employee long saleNum; double getPay()return saleNum*0.4;Sale(String name,long saleNum)super(name); no=id; this.saleNum=saleNum; public String toString()return name:+name+ no:+no+ pay:+getPay();class Tech extends Employee long salaryHours; double getPay()return salaryHours*100; Tech(String name,long salaryHours)super(name); no=id; this.salaryHours=salaryHours; public String toString()return name:+name+ no:+no+ pay:+getPay();class EmployApp public static void main(String args)Vector v=new Vector();Employee em;double numPay=0;v.addElement(new Sale(liping,10000);v.addElement(new Sale(susan,12000);v.addElement(new Tech(linda,40);v.addElement(new Tech(write,20);v.addElement(new Manager(gucci);v.addElement(new Manager(jessica);Enumeration e=v.elements();while(e.hasMoreElements() em=(Employee)e.nextElement();numPay=numPay+em.getPay(); System.out.println(em);System.out.println(总工资:+numPay);IV 实验4 答案4-(1)import java.lang.*;import java.io.*;class TestException public static void main(String args) tryoutofBound();arraySize();nullPointer();catch(NegativeArraySizeException e)System.out.println(e.toString();static void outofBound() try int i;int a; a=new int10; for(i=0;i11;i+) ai=i; System.out.println(a+i+=+ ai); catch(IndexOutOfBoundsException e)System.out.println(e.toString(); static void nullPointer() try String s=null; System.out.println(s.length(); catch(NullPointerException e)System.out.println(e.toString(); static void arraySize() throws NegativeArraySizeException try int a; a=new int-3; catch(NegativeArraySizeException e)throw e;4-(2)class MyException extends Exceptionprivate String Msg;public MyException(String message)super(message);Msg=message;public void printMsg()System.out.println(Msg);public class EX6_3void GenerateMyException() throws MyExceptionthrow new MyException(此处发生异常信息);public static void main(String args)EX6_3 obj=new EX6_3();tryobj.GenerateMyException();catch (MyException e)e.printMsg();4-(3)思考题class NullParameterException extends Exception NullParameterException(String Message)super(Message); ;class TestArea public static void main(String args) shape sh=null;int num;num=args.length;tryswitch(num)case 1:sh=new Zangle(Double.parseDouble(args0); break;Case 2:sh=new Longangle(Double.parseDouble(args0),Double.parseDouble(args1);break;case 3:sh=new Triangle(Double.parseDouble(args0),Double.parseDouble(args1),Double.parseDouble(args2);break;case 0:throw new NullParameterException(参数个数为零!);System.out.println(sh.area();catch(Exception e)System.out.println(e.toString();abstract class shapeabstract double area();class Triangle extends shapedouble a,b,c;Triangle(double a,double b,double c) this.a=a; this.b=b; this.c=c;double area()double s;s=(a+b+c)/2;return(Math.sqrt(s*(s-a)*(s-b)*(s-c);class Longangle extends shapedouble l,w;Longangle(double l,double w) this.l=l; this.w=w;double area() return (l*w);class Zangle extends shapedouble l;Zangle(double l)this.l=l;double area()return l*l;V 实验5 答案5-(1)import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.FileWriter;import java.io.IOException;import java.io.ObjectOutputStream;import java.io.PrintWriter;import java.io.Serializable;import java.util.*; class Student implements SerializableString name;String sno;int age;Student(String name,String sno,int age)=name;this.sno=sno;this.age=age;void displayInfo()System.out.println(name=+name+sno=+sno+age=+age);String getSno()return sno;int getAge()return age;String getName()return name; class StudentAll Vector studentSet; StudentAll() studentSet=new Vector(); boolean addStudent(Student s) boolean flag=true; for(Student se:studentSet) if(se.getSno().equals(s.getSno() flag=false; break; if(flag) studentSet.addElement(s); return flag; boolean removeStudent(String sno) boolean flag=false; for(Student se:studentSet) if(se.getSno().equals(sno) studentSet.remove(se); flag=true;break; return flag; int getStudentNum() return studentSet.size(); void saveStudent() try PrintWriter ps=new PrintWriter(new FileWriter(sp3.txt); for (Student se:studentSet) ps.print(se.getName(); ps.print( ); ps.print(se.getSno(); ps.print( ); ps.println(se.getAge(); ps.close(); catch(IOException e) void displayAllStudent(int displaySource) String name,sno; int age; if(displaySource=1) studentSet.removeAllElements(); try Scanner ps=new Scanner(new FileInputStream(sp3.txt); while(ps.hasNext() name=ps.next(); sno=ps.next(); age=ps.nextInt(); studentSet.addElement(new Student(name,sno,age); ps.close(); catch(IOException e) for(Student se:studentSet) se.displayInfo(); public class TestStudentAll public static void main(String args) int i; StudentAll stSet=new StudentAll(); /* stSet.addStudent(new Student(aaa,001,25); stSet.addStudent(new Student(bbb,002,21); if(! stSet.addStudent(new Student(ccc,002,21) System.out.println(学号雷同); stSet.addStudent(new Student(ccc,003,21); stSet.displayAllStudent(0); stSet.saveStudent(); */ stSet.displayAllStudent(1); stSet.removeStudent(002); System.out.println(n删除后信息); stSet.displayAllStudent(0); import java.io.*;import java.util.*; class Student implements SerializableString name;String sno;int age;Student(String name,String sno,int age)=name;this.sno=sno;this.age=age;void displayInfo()System.out.println(name=+name+sno=+sno+age=+age);String getSno()return sno;int getAge()return age;String getName()return name; class StudentAll Vector studentSet; StudentAll() studentSet=new Vector(); boolean addStudent(Student s) boolean flag=true; for(Student se:studentSet) if(se.getSno().equals(s.getSno() flag=false; break; if(flag) studentSet.addElement(s); return flag; boolean removeStudent(String sno) boolean flag=false; for(Student se:studentSet) if(se.getSno().equals(sno) studentSet.remove(se); flag=true;break; return flag; int getStudentNum() return studentSet.size(); void saveStudent() try PrintWriter ps=new PrintWriter(new FileWriter(sp3.txt); for (Student se:studentSet) ps.print(se.getName(); ps.print( ); ps.print(se.getSno(); ps.print( ); ps.println(se.getAge(); ps.close(); catch(IOException e) void displayAllStudent(int displaySource) String name,sno; int age; if(displaySource=1) studentSet.removeAllElements(); try Scanner ps=new Scanner(new FileInputStream(sp3.txt); while(ps.hasNext() name=ps.next(); sno=ps.next(); age=ps.nextInt(); studentSet.addElement(new Student(name,sno,age); ps.close(); catch(IOException e) for(Student se:studentSet) se.displayInfo(); public class TestStudentAll public static void main(String args) int i; StudentAll stSet=new StudentAll(); /* stSet.addStudent(new Student(aaa,001,25); stSet.addStudent(new Student(bbb,002,21); if(! stSet.addStudent(new Student(ccc,002,21) System.out.println(学号雷同); stSet.addStudent(new Student(ccc,003,21); stSet.displayAllStudent(0); stSet.saveStudent(); */ stSet.displayAllStudent(1); stSet.removeStudent(002); System.out.println(n删除后信息); Collections.sort(stSet.studentSet,new NameComparator(); stSet.displayAllStudent(0); class NameComparator implements Comparator public int compare(Object obj1,Object obj2) Student e1=(Student)obj1; Student e2=(Student)obj2; if(pareTo()=0) return 0; else if(pareTo()0) return 1; else return -1; import java.io.*;import java.util.*; class Student implements Serializable,ComparableString name;String sno;int age;Student

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论