test8.4

这一题出的没什么意思,仅仅是让你在Shapes下边定义一个新的Shape对象,然后调用Shanpe class下包含的函数,跟老的s[0,1,2...9】做比较,输出效果完全一样,没什么区别


import java.util.Random;
class Shape{
public void draw(){}
public void erase(){}
public void show(){System.out.println("Shape.show()");}

}
class Circle extends Shape{
@Override public void draw(){}
@Override public void erase(){}
//@Override public void show(){System.out.println("Circle.show()");}
}
class Square extends Shape{
@Override public void draw(){}
@Override public void erase(){}
@Override public void show(){System.out.println("Square.show()");}
}
class Triangle extends Shape{
@Override public void draw(){}
@Override public void erase(){}
//@Override public void show(){System.out.println("Triangle.show()");}
}
class randomShapeGenerator {
private Random rand=new Random(47);
public Shape next()
{
switch(rand.nextInt(3))
{
default:
case 0:return new Circle();
case 1:return new Square();
case 2:return new Triangle();
}
}
}
public class Shapes{
private static randomShapeGenerator gen=new randomShapeGenerator();
public static void main(String[] args) {
Shape[] s=new Shape[9];
for(int i=0;i<s.length;i++)
s[i]=gen.next();
for(Shape p:s)
p.draw();
//new Circle().show();new Square().show();new Triangle().show();
Shape snew=new Shape();
snew.draw();snew.show();
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值