//因参加会议,本次课未上。
题目:写个形状shape类,定义一个draw方法(方法中不用实现什么复杂的功能,输出一句话就可以)和一些其它方法,然后写几个子类比如三角形,矩形,圆形,并且重写draw方法,同时实现几个自己独有的方法。然后在main方法中通过多态的形式调用不同类的draw()方法。
代码:
重写:
反思:子类不会直接继承父类的有参构造方法,需要使用类似17、18行的方法进行调用。
附代码文本:
package shapetest;
class Shape {
int number;
String name;
Shape(){}
Shape(int a, String str) {
number = a;
name = str;
}
public void draw() {
System.out.printf("The number is %d,and the name is %s\n", number, name);
}
}
class Circle extends Shape{
Circle(int a,String str){
super(a,str);
}
int r;
float area() {
float area=3.14f*r*r;
return area;
}
}
class rectangle extends Shape{
int a;
int area() {
int area=a*a;
return area;
}
}
public class shapetest {
public static void main(String[] args) {
Shape a = new Shape(1, "triangle");
a.draw();
Circle b=new Circle(2,"happy");
b.draw();
rectangle c=new rectangle();
c.name="good";
c.a=10;
c.draw();
System.out.println(c.area());
}
}
网友评论