IluDuk0
2016-04-22 10:19
package absclass;
public abstract class Shape {//创建一个Shape抽象类
public abstract double perimeter();//创建一个周长抽象方法,只做声明。
public abstract double area();//创建一个面积抽象方法,只做声明。
}
public class Rectangle extends Shape {//创建一个Rectangle类继承Shape抽象类
private int m=3;//Rectangle类私有属性
private int n=3;//Rectangle类私有属性
private int l;//Rectangle类私有属性
private int s;//Rectangle类私有属性
//重写抽象方法
public double perimeter(){
l=(m+n);
System.out.println("矩形的周长为:"+l);
return l;
}
//重写抽象方法
public double area(){
s=m*n;
System.out.println("矩形的面积为:"+s);
return s;
}
}
public class Circle extends Shape {//创建一个Circle类继承Shape抽象类
private final double pi=3.14;//创建一个双精度常量并赋值3.14。
private double r=1.00;//Circle类私有属性
private double c;//Circle类私有属性
private double s;//Circle类私有属性
//重写抽象方法
public double perimeter(){
c=2*pi*r;
System.out.println("圆的周长为:"+c);
return c;
}
//重写抽象方法
public double area(){
s=pi*r*r;
System.out.println("圆的面积为:"+s);
return s;
}
}
//创建一个test测试类
public class test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Shape R=new Rectangle();//创建一个父类的对象指向子类的引用
Shape C=new Circle();//创建一个父类的对象指向子类的引用
R.perimeter();
R.area();
C.perimeter();
C.area();
}
}
没毛病
楼主下次写的时候注意下: private int l;//Rectangle类私有属性; public double perimeter(); return l;其中l是int型,而返回值是double ;不过这是向下的转换,系统应该会强制转换的,但是下次也要注意呀
楼主下次写的时候注意下: private int l;//Rectangle类私有属性; public double perimeter(); return l;其中l是int型,而返回值是double ;不过这是向下的转换,系统应该会强制转换的,但是下次也要注意呀
在子方法中的return 不是没有任何作用了吗
public class Rectangle extends Shape {
int a=1;
int b=2;
@Override
public void zhouzhang() {
// TODO Auto-generated method stub
int zz=(a+b)*2;
System.out.println("矩形周长为:"+zz);
}
@Override
public void mianji() {
// TODO Auto-generated method stub
int mj=a*b;
System.out.println("矩形面积为:"+mj);
}
private加不加没啥用吧
return 一个值返回函数
用return是什么作用
可以。。。
Java入门第二季 升级版
530655 学习 · 6091 问题
相似问题
回答 5
回答 2