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