/**编写一个java程序,用于将摄氏温度转换为华氏温度反之亦然.使用继承定义一个父类
*其中包含convert()的抽象方法.定义两个子类用于重写convert()方法,一个子类将提供
*从摄氏到华氏转换的实现,另一个子类将提供从华氏到摄氏的转换实现,再编写一个测试
*类将华氏100度转换为摄氏温度,并将摄氏温度98.6转换为华氏温度,声明final变量以存储
*常量值32
*/
abstract class temperature{
double C;
double F;
final int X=32;
temperature(double C,double F){
this.C=C;
this.F=F;
}
abstract void convert();
}
class CConvertF extends temperature{
CConvertF(double C){
super(C);
}
public double convert(){
return F=(C-X)*5/9;
}
void Display(){
System.out.println("摄氏温度为"+C);
System.out.println("华氏温度为"+convert());
}
}
class FConvertC extends temperature{
FConvertC(double F){
super(F);
}
public double convert(){
return C=F*9/5+X;
}
void Display(){
System.out.println("华氏温度为"+F);
System.out.println("摄氏温度为"+convert());
}
}
public class ConversionTest{
public static void main(String[] args){
CConvertF convertF=new CConvertF(100.0);
System.out.println("从华氏温度到摄氏温度的转换");
System.out.println("-------------------------------------------------");
convertF.Display();
FConvertC convertC=new FConvertC(98.6);
System.out.println("从摄氏温度到华氏温度的转换");
System.out.println("-------------------------------------------------");
convertC.Display();
}
}
望高手指出错误后说明下为什么不能这么写,刚学面向对象,感觉很搞~~谢谢了!!!