雕刻时光

just do it……nothing impossible
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

java派生类练习

Posted on 2011-09-26 21:00  huhuuu  阅读(1058)  评论(0编辑  收藏  举报
View Code
//第七题
import java.util.*;
class Vehicle{
protected int speed, kind;
protected String color;
Scanner cin=new Scanner(System.in);

public Vehicle(int a){ //不带参数的构造方法
kind=a;
System.out.println("构造完成");
}
public void setSpeed(int a){
speed=a;
}

public void setColor(String a)
{
color=a;
}

public void input()
{
System.out.println("输入速度:");
int temp=cin.nextInt();
setSpeed(temp);
System.out.println("输入颜色:");
String t=cin.next();
setColor(t);
}

public int retKind(){
return kind;
}

public String retColor()
{
return color;
}

public int retSpeed(){
return speed;
}
}

class Car extends Vehicle { // Circle类继承Point类
protected int passenger;
public int retpass()
{
return passenger;
}
public void setPass()
{

System.out.println("座位数:");
int t=cin.nextInt();

passenger=t;
}
public void ret(){
System.out.println("颜色:"+this.retColor()+"\n类别:"+this.retKind()+"\n座位数:"+this.retpass()+"\n速度:"+this.retSpeed());
}
public Car(){
super(12345); //引用父类带参数的构造方法
super.input();
setPass();
this.ret();

}


}
public class Main{
public static void main( String args[] ){
Car test=new Car();
}
}


import java.util.*;
class Circle
{
protected double x,y,r;

public Circle()
{
System.out.println("构造完成");
};
public void setX(double a)
{x=a;}

public void setY(double a)
{y=a;}

public void setR(double a)
{r=a;}

public double retX()
{return x;}

public double retY()
{return y;}

public double retR()
{return r;}

public double area()
{
return 3.1415*r*r;
}

public double Perimeter()
{
return 2*3.1415*r;
}

}
//第八题
class Cylinder extends Circle
{
protected double h;
Scanner cin=new Scanner(System.in);
Cylinder()
{
System.out.println("构造完成");
}
public void input()
{
System.out.println("输入x");
double temp=cin.nextDouble();
super.setX(temp);

System.out.println("输入y");
temp=cin.nextDouble();
super.setY(temp);

System.out.println("输入r");
temp=cin.nextDouble();
super.setR(temp);

System.out.println("输入h");
temp=cin.nextDouble();
setH(temp);
}

public void output()
{
System.out.println("输出x:"+super.retX());
System.out.println("输出y:"+super.retY());
System.out.println("输出r:"+super.retR());
System.out.println("输出h:"+retH());
System.out.println("输出圆柱表面积:"+area());
System.out.println("输出圆柱体积"+volume());
}

public double retH()
{return h;}

public void setH(double a)
{h=a;}

public double area()
{
return 2*r*r*3.1415+2*3.1415*r*h;
}

public double volume()
{
return r*r*3.1415*h;
}
}

public class Main{
public static void main( String args[] ){
Cylinder CC=new Cylinder();
CC.input();
CC.output();
}
}