收藏 分销(赏)

实验四 抽象类、接口和图形.doc

上传人:s4****5z 文档编号:8671493 上传时间:2025-02-25 格式:DOC 页数:6 大小:161KB
下载 相关 举报
实验四 抽象类、接口和图形.doc_第1页
第1页 / 共6页
实验四 抽象类、接口和图形.doc_第2页
第2页 / 共6页
点击查看更多>>
资源描述
实验四 抽象类、接口和图形 (上课被教师验收的同学不用提交实验结果,并注意在教师处签名。未完成的同学请提交实验结果,即将程序直接粘贴至本DOC文件,并在邮件名的标题中注明:学号+姓名+实验三) 1. 给出下面程序的输出: Value is too small Continue after the catch block Continue after the catch block 2. 假设下面的try-catch块中的statement2引起一个异常: No No Yes No 3. 在下面的定义中,哪个定义了一个合法的抽象类? 4. C 4.为什么下面两行代码可以编译,但会导致运行时错误? Number numbeRef = new Integer(0); Double doubleRef = (Double)numberRef; 5. 下面的说法为真还是为假? (1) 除了不能使用new操作符创建抽象类的实例之外,一个抽象类可以像非抽象类一样使用。 T (2) clone()为Object的protected方法,可以在Object的子类当中使用。 (3) 可以将new int[10]、new String[100]、new Object[50]或者new Calendar[20]赋值给一个Object[]类型的变量。 (4) 抽象类可以使用该抽象类的构造方法创建实例。 (5) 接口被编译成独立的字节码文件。 (6) 非抽象父类的子类不能是抽象类。 6. 编写一个方法,返回对象数组中最大的对象。方法签名如下: public static Object max(Comparable[] a) 所有对象都是Comparable接口的实例。对象在数组中的顺序是由CompareTo方法决定的。 编写测试程序,创建一个由10个字符串构成的数组、一个由10个整数构成的数组和一个由10个日期构成的数组,找出数组中最大的字符串、整数和日期。 7. 创建一个自定制面板,它可以显示X、O或者空白。显示什么是重画面板时随时决定的。使用Math.random()方法随机产生整数0、1或2,对应于面板上显示X、0或者空白。创建一个包含9个自定制面板的框架,如图15-29b所示。 8. 编写一个方法,求数组中所有几何对象的面积之和。方法签名如下: public static double sumArea(GeometricObject[] a) 编写测试程序,创建四个对象(两个圆和两个矩形)的数组,然后使用sumArea方法求它们的总面积。 (GeometricObject class和Circle class在此提供,请自拟Rectangle类) // Circle.java: The circle class that extends GeometricObject public class Circle extends GeometricObject { private double radius; /**Default constructor*/ public Circle() { this(1.0); } /**Construct circle with a specified radius*/ public Circle(double radius) { this(radius, "white", false); } /**Construct a circle with specified radius, filled, and color*/ public Circle(double radius, String color, boolean filled) { super(color, filled); this.radius = radius; } /**Return radius*/ public double getRadius() { return radius; } /**Set a new radius*/ public void setRadius(double radius) { this.radius = radius; } /**Implement the getArea method defined in GeometricObject*/ public double getArea() { return radius*radius*Math.PI; } /**Implement the getPerimeter method defined in GeometricObject*/ public double getPerimeter() { return 2*radius*Math.PI; } /**Override the equals() method defined in the Object class*/ public boolean equals(Circle circle) { return this.radius == circle.getRadius(); } /**Override the toString() method defined in the Object class*/ public String toString() { return "[Circle] radius = " + radius; } } // GeometricObject.java: The abstract GeometricObject class public abstract class GeometricObject { private String color = "white"; private boolean filled; /**Default construct*/ protected GeometricObject() { } /**Construct a geometric object*/ protected GeometricObject(String color, boolean filled) { this.color = color; this.filled = filled; } /**Getter method for color*/ public String getColor() { return color; } /**Setter method for color*/ public void setColor(String color) { this.color = color; } /**Getter method for filled. Since filled is boolean, so, the get method name is isFilled*/ public boolean isFilled() { return filled; } /**Setter method for filled*/ public void setFilled(boolean filled) { this.filled = filled; } /**Abstract method findArea*/ public abstract double getArea(); /**Abstract method getPerimeter*/ public abstract double getPerimeter(); }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服