📄 dispatch.java
字号:
abstract class Figure{
double a;
double b;
Figure(double a0,double b0){
a=a0;
b=b0;
}
abstract void Area();
}
class Rectangle extends Figure{
Rectangle(double a ,double b){
super(a,b);
}
void Area(){
System.out.println("area of rectangle is:"+a*b);
}
}
class Triangle extends Figure{
Triangle(double a,double b){
super(a,b);
}
void Area(){
System.out.println("Area of triangle is:"+a*b/2);
}
}
class Dispatch{
public static void main(String args[])
{
//Figure f=new Figure(10,10);
Rectangle r=new Rectangle(20,10);
Triangle t=new Triangle(10,30);
Figure ff; //声名Figure类型的引用变量
//ff=f;
//ff.Area();
ff=r;
ff.Area();
ff=t;
ff.Area();
}}
/*由于被定义成为一个抽象类,Figure不能生成实例对象,但是可以创建一个Figure类型的引用变量,可以用来引用任何从Figure派生的对象.同时任何从Figure中派生的子类都必须重载Area()函数*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -