java接口的定义和实现接口-java实验报告

java接口的定义和实现接口-java实验报告
定义一个抽象基类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) 运行程序
  ⑵ 源代码
一,  public class UseAbstract
 {
  public static void main(String[] args)
  {
   Shape rec =new Rectangle(3,6);
   Shape cir = new Circle(6);
   System.out.println("长方形的面积:"+rec.getArea());
   System.out.println("圆的面积:"+cir.getArea());
  }
 }
  abstract class Shape
 {
  public abstract double getArea();
 }
  class Rectangle extends Shape
 {
  double d,w;
  public Rectangle(double d,double w)
  {
   this.d=d;
   this.w=w;
  }
  public double getArea()
  {
   return d*w;
  }
 }
  class Circle extends Shape
 {
  double r;
  public Circle(double r)
  {
   this.r=r;
  }
  public double getArea()
  {
   return Math.PI*r*r;
  }
 }

二,
interface ClassName
{
 public abstract void getClassName();
}
class Horse implements ClassName
{
 public void getClassName()
 {
  System.out.println("该类名为:Horse");
 }
}
public class UseInterface
{
 public static void main(String[] args)
 {
  Horse h =new Horse();
     h.getClassName();
 }
}
三,
public class Test
{
 public static void main(String[] args)
 {
  A a=new A();
  System.out.println(a.area(5));
 }
}
interface myItfc
{
    public double area (double a); 
}
class A implements myItfc
{
  public double area (double a)
  {
   
   
   return a*a*a;
  }
}

四.
import java.awt.*;
import java.applet.*;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
public class AppMove extends Applet implements KeyListener{
 
  int x=200,y=100;
 
public void paint(Graphics g) {
  g.drawString("Welcome to Java!!", x, y );
 }
  public void init()
  {
   addKeyListener(this);
  }
 
 public void keyPressed(KeyEvent e){
 if(e.getKeyCode()==KeyEvent.VK_UP)
 y-=3;
 else if(e.getKeyCode()==KeyEvent.VK_DOWN)
 y+=3;
 else if(e.getKeyCode()==KeyEvent.VK_LEFT)
 x-=3;
 else if(e.getKeyCode()==KeyEvent.VK_RIGHT)
 x+=3;
        repaint();
  } 
 
 public void keyReleased(KeyEvent e){
 }
 public void keyTyped(KeyEvent e){
 }
}   
4、 测试数据与实验结果(可以抓图粘贴)5、 结果分析与实验体会
通过本次实验了解了JAVA的多态性,相对还是比较简单的358

  • 上一篇文章:
  • 下一篇文章:
  • Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有