JAVA多态性的实现-java实验报告1、 实验内容或题目(1) 定义一个抽象基类Shape,它包含一个抽象方法getArea(),从Shape类派生出Rectangle和Circle类,这两个类都用getArea()方法计算对象的面积。编写编写应用程序使用Rectangle类和Circle类。(2) 定义一个接口ClassName,接口中只有一个抽象方法getClassName()。设计一个类Horse,该类实现接口ClassName中的方法getClassName(),功能是获取该类的类名。编写应用程序使用Horse类。(3) 定义接口myItfc,接口中只有一个名为area的方法,该方法有一个double类型参数,返回类型也为double。编写一个应用程序,并实现接口myItfc,接口中area方法的实现是返回参数的立方值;在应用程序中调用该方法并输出其结果。(4) 编写小程序,在小程序窗口中显示字符串“java程序设计”,按下键盘上的箭头键,可按照箭头方向移动(提示:得到键盘键代码的方法是e.getKeyCode(),上、下、左、右键的编码分别用常量VK_UP 、VK_DOWN 、VK_LEFT 、VK_RIGHT表示)。2、实验目的与要求⑴ 多态性。⑵ 接口的定义和实现接口。⑶ 内部类、匿名内部类对象的的编写和使用。3、 实验步骤与源程序 ⑴ 实验步骤a) 编辑源文件b) 编译c) 运行 ⑵ 源代码 题目一package mylib;public abstract class Shape{ public abstract void getArea();}package mylib;public class Rectangle extends Shape{ int x,y; public Rectangle(int x,int y){ this.x=x; this.y=y; } public void getArea(){ System.out.println("矩形的面积:"+x*y); }}package mylib;public class Circle extends Shape{ int r; public Circle(int r){ this.r=r;} public void getArea(){ System.out.println("圆的面积:"+Math.PI*r*r); } }import mylib.Shape;import mylib.Rectangle;import mylib.Circle;public class Exe6_1{ public static void main(String args[]){ Rectangle obj1=new Rectangle(5,6); Circle obj2=new Circle(4); obj1.getArea(); obj2.getArea(); Shape obj3=new Circle(5); obj3.getArea(); }}题目二package mylib;public interface ClassName{ public abstract String getClassName();}package mylib;public class Horse implements ClassName{ public String getClassName(){ return "Horse"; }}import mylib.ClassName;import mylib.Horse;public class Exe6_2{ public static void main(String args[]){ Horse obj=new Horse(); System.out.println("类名:"+obj.getClassName()); }}题目三
4、 测试数据与实验结果(可以抓图粘贴)题目一 题目二 5、 结果分析与实验体会358