
JAVA上机题目_计算机软件及应用_IT计算机_专业资料.pdf
25页一、运行书中Helloworld程序二、编写一个计算器类,要求实现加、减、乘、除运算,注意在进行除法运算时,如果除数为0,那么就直接输出Error来下面代码为判断是否为数字,如果是数字,那么返回是tru e,否则返回false,在使用下面代码前,要在程序头导入包:import java.utiLregex.*;public static boolean isNumeric(String str)(Pattern pattern=Ppite(H0-9*H);Matcher isNum=pattern.matcher(str);iff!isNum.matches()(return false;return true;)三、编写Java程序,要求在运行的时候输入一个数字,表示行数,程序计算出相应行数的杨辉三角数据,并在屏幕上显示出来1)、每行数字左右对称,由 1 开始逐渐变大,然后变小,回 到 12)、第 n 行的数字个数为n 个3)、第 n 行数字和为2n-14)、每个数字等于上一行的左右两个数字之和将 第 2n+l行 第 1 个 数,跟 第 2n+2行第3 个数、第 2n+2行第5 个数连成一 线,这些数的和是第2n个斐波那契数。
将第2n行第2 个数,跟第2n+l行第4 个数、第 2n+2行第6 个数这些数之和是第2 n-l个斐波那契数6)、第 n行的第1 个数为1,第二个数为1 X (n-1),第三个数为1 Xn X (n-1)/2,第四个数为I X n X (n-1)/2 X (n-2)/3 依此类推通 过 m a i n 方法中的a r g s获取用户附带的参数,例如用户输入a p p 1 0 (注意参 数 间 有 空 格),那 么 a r g s 对 应 的 值 为:a r g s 0 =1 0 ,然 后 通 过I n te g e r,p a r se l n t(a r g s 0 ),即可得到 i n t 类型的数据四、编写Java程序,Java中程序的结构,类的声明和定义掌握面向对象的基本思想,抽象对象并定义类,类的继承结构,理解并能熟练运用类的多态性,抽象类和接口及它们的区别,理解并熟练运用抽象类和接口解决耦合问题1、构造一个抽象类S ha p e,它有两个抽象的方法a r e a ()和 p e r i m e te r (),分别表示求面积和周长,止 匕 外,它还有一个具体方法m e ssa g e (),能输出类的一些信息。
p ub l i c a b str a c t c l a ss S ha p e 创建抽象类p ub l i c a b str a c t vo i d a r e a O ;创建抽象方法p ub l i c a b str a c t vo i d p e r i m e te r();创建抽象方法p ub l i c vo i d m e ssa g e()创建具体方法S yste m.out.p r i n t(0 Y );)2、定义一个接口 G r a p h,它有一个抽象的方法d r a w(),表示绘制S ha p ep ub l i c i n te r f a c e G r a p h 创建接口p ub l i c a b str a c t vo i d d r a w();创建抽象方法3、构 造 S ha p e 的两个子类C i r c l e 和 R e c ta n g l e,分别表示圆和矩形,并且实现接口G r a p ho创建C i r e 1 e 类,继承S ha p e 类,并实现接口 G r a p hp ub l i c c l a ss C i r c l e e xte n d s S ha p e i m p l e m e n ts G r a p h/重写抽象类的抽象方法p ub l i c vo i d a r e a()/重写抽象类的抽象方法p ub l i c vo i d p e r i m e te r()/重写接口的抽象方法p ub l i c vo i d d r a w();)创建R e c ta n g l e 类,继承S ha p e 类,并实现接口G r a p hp ub l i c c l a ss R e c ta n g l e e xte n d s S ha p e i m p l e m e n ts G r a p h/重写抽象类的抽象方法p ub l i c vo i d a r e a()/T O D O A uto-g e n e r a te d m e tho d stub)/重写抽象类的抽象方法p ub l i c vo i d p e r i m e te r()/T O D O A uto-g e n e r a te d m e tho d stub/重写接口的抽象方法p ub l i c vo i d d r a w();)4、构造测试类T e st,其有方法g e tS ha p e D a ta (S ha p e s),它输出s 的面积和周长,构造矩形实例和圆实例,体会a r e a 方法和p e r i m e te r 方法的多态性。
p ub l i c c l a ss T e st p ub l i c sta ti c vo i d g e tS ha p e D a ta(S ha p e s)s.a r e a ();s.p e r i m e te r ();)p ub l i c sta ti c vo i d m a i n(S tr i n g a r g s)getShapeData(n e w C i r c l e();getShapeData(n e w R e c ta n g l e();)创建T e st类创建方法抽象类的多态抽象类的多态5、类似上题,为T e s t 添加方法d r a w G r a p h (G r a p h g),它 画 出 G r a p h 的图形-调用d r a w 方法,构造矩形实例和圆实例,体会d r a w 方法的多态性p u b l i c c l a s s T e s t 创建T e s t 类p u b l i c v o i d d r a w G r a p h(G r a p h g)g.d r a w ();)p u b l i c s t a t i c v o i d m a i n(S t r i n g 1 a r g s)T e s t t=n e w T e s t ();t.d r a w G r a p h(n e w Ci r c l e();t.d r a w G r a p h(n e w R e c t a n g l e();)总结:创建方法接口的多态接口的多态1、根据自己对实验的理解,说明一下在本实验中,抽象类Shape的作用是什么?产生子类的同时给于子类些特定的属性和方法2、分析说明抽象类和接口的异同?抽象类可以给出些成员的实现,接口却不包含成员的实现,抽象类的抽象成员可以被子类部分实现,接口的成员需要实现类完全实现,一个类只能继承一个抽象类,但可以实现多个接口。
1.类是对对象的抽象;抽象是对类的抽象;接口是对行为的抽象2.如果行为跨越不同的对象,可使用;对于些相似的类对象,用继承抽象类3.抽象类是从子类发现公共的东西,泛化出父类,然后子类继承父类;而接口是根本不知子类的存在,方法如何实现还不确定,预先定义五、熟悉Java中程序的结构,接口的定义和使用学校中有教师和学生两类人,而在职研究生既是教师又是学生设计两个接口s t u d e n t i n t e r f a c e 和 t e a c h e r i n t e r f a c e其中,s t u d e n t i n t e r f a c e 接 口包含 s e t F e e ()g e t F e e ()方法,分别用于设置和获取学生的学费;t e a c h e r i n t e r f a c e 接口包含s e t P a y ()和g e t P a y O方法,分别用于设置和获取教师的工资定义一个研究生类 g r a d u a t e,实现 s t u d e n t i n t e r f a c e 接口和 t e a c h e r i n t e r f a c e 接口,它的成员变量有n a m e,s e x,a g e,f e e,p a yo创建一个姓名为“z h a n g s a n”的研究生,统计他的年收入和学费,如果收入减去学费不足2000元,则输出 p r o v i d e a l o a n (需要贷款)信息。
要求:在g r a d u a t e 中实现各个接口定义的抽象方法实验代码:定义接口 I S t u d e n t i n t e r f a c ep u b l i c i n t e r f a c e I S t u d e n t i n t e r f a c e 创建学牛.接I I(p u b l i c v o i d s e t F e e(f l o a t f e e);抽象(设置学生的学费)方法p u b l i c f l o a t g e t F e e();/抽象(获取学生的学费)方法定义接口 J T e a c h e r i n t e r f a c ep u b l i c i n t e r f a c e I T e a c h e r i n t e r f a c e 创建教师接I I(p u b l i c v o i d s e t P a y (f l o a t p a y);抽象(设置教师工资)方法p u b l i c f l o a t g e t P a y O ;抽象(获取教师工资)方法)定义研究生类G r a d u a t ep u b l i c c l a s s G r a d u a t e i m p l e m e n t s I S t u d e n t i n t e r f a c e,I T e a c h e r i n t e r f a c e S t r i n g n a m e,s e x;i n t a g e;f l o a t f e e,p a y;p u b l i c G r a d u a t e (S t r i n g n a m e,S t r i n g s e x,i n t a g e)/定义构造函数设置姓名,性别及年龄 t h i s,n a m e =n a m e;t h i s.s e x =s e x;t h i s,a g e =a g e;O v e r r i d ep u b l i c f l o a t g e t F e e()/实现返1 可学费数据的方法/T O DO Au t o-g e n e r a t e d m e t h o d s t u br e t u r n f e e;O v e r r i d ep u b l i c v o i d s e t F e e(f l o a t f e e)实现设置学费数据的方法/T O DO Au t o-g e n e r a t e d m e t h o d s t u bt h i s.f e e =f e e ;)O v e r r i d ep u b l i c f l o a t g e t P a y O 实现返回资数据的方法/T O DO Au t o-g e n e r a t e d m e t h o d s t u br e t u r n p a y;)O v e r r i d ep u b l i c v o i。
