JAVA上机题目.doc

上传人:pu****.1 文档编号:560340000 上传时间:2023-03-14 格式:DOC 页数:25 大小:219.01KB
返回 下载 相关 举报
JAVA上机题目.doc_第1页
第1页 / 共25页
JAVA上机题目.doc_第2页
第2页 / 共25页
JAVA上机题目.doc_第3页
第3页 / 共25页
JAVA上机题目.doc_第4页
第4页 / 共25页
JAVA上机题目.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《JAVA上机题目.doc》由会员分享,可在线阅读,更多相关《JAVA上机题目.doc(25页珍藏版)》请在金锄头文库上搜索。

1、一、 运行书中Helloworld程序二、 编写一个计算器类,要求实现加、减、乘、除运算,注意在进行除法运算时,如果除数为0,那么就直接输出Error来下面代码为判断是否为数字,如果是数字,那么返回是true,否则返回false,在使用下面代码前,要在程序头导入包:import java.util.regex.*;public static boolean isNumeric(String str)Pattern pattern = Ppile(0-9*);Matcher isNum = pattern.matcher(str);if( !isNum.matches() )return fal

2、se;return true;三、 编写Java程序,要求在运行的时候输入一个数字,表示行数,程序计算出相应行数的杨辉三角数据,并在屏幕上显示出来。(1)、每行数字左右对称,由1开始逐渐变大,然后变小,回到1。 (2)、第n行的数字个数为n个。 (3)、第n行数字和为2n 1。 (4)、每个数字等于上一行的左右两个数字之和。(5)、将第2n+1行第1个数,跟第2n+2行第3个数、第2n+2行第5个数连成一线,这些数的和是第2n个斐波那契数。将第2n行第2个数,跟第2n+1行第4个数、第2n+2行第6个数这些数之和是第2n-1个斐波那契数。 (6)、第n行的第1个数为1,第二个数为1(n-1),

3、第三个数为1n(n-1)/2,第四个数为1n(n-1)/2(n-2)/3依此类推。 通过main方法中的args获取用户附带的参数,例如用户输入app 10 (注意参数间有空格),那么args对应的值为:args0=10,然后通过Integer.parseInt(args0),即可得到int类型的数据。四、 编写Java程序,Java中程序的结构,类的声明和定义掌握面向对象的基本思想,抽象对象并定义类,类的继承结构,理解并能熟练运用类的多态性,抽象类和接口及它们的区别,理解并熟练运用抽象类和接口解决耦合问题。 1、构造一个抽象类Shape,它有两个抽象的方法area()和perimeter()

4、,分别表示求面积和周长,此外,它还有一个具体方法message(),能输出类的一些信息。public abstract class Shape /创建抽象类public abstract void area();/创建抽象方法public abstract void perimeter();/创建抽象方法public void message()/创建具体方法System.out.print(OY);2、定义一个接口Graph,它有一个抽象的方法draw(),表示绘制Shape。public interface Graph /创建接口public abstract void draw();/创

5、建抽象方法3、构造Shape的两个子类Circle和Rectangle,分别表示圆和矩形,并且实现接口Graph。/创建Circle类,继承Shape类,并实现接口Graphpublic class Circle extends Shape implements Graph / 重写抽象类的抽象方法public void area() / 重写抽象类的抽象方法public void perimeter() / 重写接口的抽象方法public void draw();/创建Rectangle类,继承Shape类,并实现接口Graphpublic class Rectangle extends S

6、hape implements Graph/ 重写抽象类的抽象方法public void area() / TODO Auto-generated method stub/ 重写抽象类的抽象方法public void perimeter() / TODO Auto-generated method stub/ 重写接口的抽象方法public void draw();4、构造测试类Test,其有方法getShapeData(Shape s),它输出s的面积和周长,构造矩形实例和圆实例,体会area方法和perimeter方法的多态性。public class Test /创建Test类publi

7、c static voidgetShapeData(Shape s) /创建 方法s.area();s.perimeter();public static void main(String args) getShapeData(new Circle();/抽象类的多态getShapeData(new Rectangle();/抽象类的多态5、类似上题,为Test添加方法drawGraph(Graph g),它“画出”Graph的图形-调用draw方法,构造矩形实例和圆实例,体会draw方法的多态性。public class Test /创建Test类public void drawGraph(

8、Graph g)/创建 方法g.draw();public static void main(String args) Test t=new Test();t.drawGraph(new Circle();/接口的多态t.drawGraph(new Rectangle();/接口的多态总结:1、根据自己对实验的理解,说明一下在本实验中,抽象类Shape的作用是什么?产生子类的同时给于子类一些特定的属性和方法2、 分析说明抽象类和接口的异同?抽象类可以给出一些成员的实现,接口却不包含成员的实现,抽象类的抽象成员可以被子类部分实现,接口的成员需要实现类完全实现,一个类只能继承一个抽象类,但可以实现

9、多个接口。1. 类是对对象的抽象;抽象是对类的抽象;接口是对行为的抽象。2. 如果行为跨越不同的对象,可使用 ;对于一些相似的类对象,用继承抽象类。3. 抽象类是从子类发现公共的东西,泛化出父类,然后子类继承父类;而接口是根本不知子类的存在,方法如何实现还不确定,预先定义。五、 熟悉Java中程序的结构,接口的定义和使用学校中有教师和学生两类人,而在职研究生既是教师又是学生。设计两个接口studentinterface和teacherinterface。其中,studentinterface接口包含setFee()getFee()方法,分别用于设置和获取学生的学费;teacherinterfa

10、ce接口包含setPay()和getPay()方法,分别用于设置和获取教师的工资。定义一个研究生类graduate,实现studentinterface接口和teacherinterface接口,它的成员变量有name,sex,age,fee,pay。创建一个姓名为“zhangsan”的研究生,统计他的年收入和学费,如果收入减去学费不足2000元,则输出“provide a loan”(需要贷款)信息。要求:在graduate中实现各个接口定义的抽象方法。实验代码:定义接口IStudentinterfacepublic interface IStudentinterface /创建学生接口 p

11、ublic void setFee(float fee);/抽象(设置学生的学费)方法public float getFee(); /抽象(获取学生的学费)方法定义接口ITeacherinterface public interface ITeacherinterface /创建教师接口 public void setPay(float pay); /抽象(设置教师工资)方法public float getPay(); /抽象(获取教师工资)方法定义研究生类Graduatepublic class Graduate implements IStudentinterface, ITeacheri

12、nterface String name,sex;int age;float fee,pay;public Graduate(String name,String sex,int age) /定义构造函数设置姓名,性别及年龄this.name = name;this.sex = sex;this.age = age;Overridepublic float getFee() /实现返回学费数据的方法/ TODO Auto-generated method stubreturn fee;Overridepublic void setFee(float fee) /实现设置学费数据的方法/ TOD

13、O Auto-generated method stubthis.fee = fee ;Overridepublic float getPay() /实现返回工资数据的方法/ TODO Auto-generated method stubreturn pay;Overridepublic void setPay(float pay) /实现设置工资数据的方法/ TODO Auto-generated method stubthis.pay = pay;定义测试类Test实例化方法public class Test /* * param args */public static void mai

14、n(String args) / TODO Auto-generated method stubGraduate zs = new Graduate(zhangsan,男,26);zs.setFee(1500); /设置学生学费zs.setPay(2000); /设置教师工资float zsf = zs.getFee();float zsp = zs.getPay();float zst = zsp - zsf;if(zst2000)System.out.print(provide a loan);六、 掌握Java高效类的特征,Java中如何设计高效的低耦合高聚合类,掌握接口在类的耦合性中的作用1、设计一个学生信息管理系统,要求能对学生的信息进行增删改查的操作,在

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号