用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - java代码库

圆的从结构层次,介绍类的继承,根据注释补写代码;

2019-09-15 作者: 云代码会员举报

[java]代码库

package shiyan6;
import  java.text.DecimalFormat;//调用格式化数字输出
import  javax.swing.JOptionPane;//JOptionPane 弹出一个标准的对话框
 
/*
 * 曹永万
 *
 * 通过点,圆的从结构层次,介绍类的继承,根据注释补写代码;
 * 2019.09.15
 *
 */
 
class Point{//父类点的定义
    protected int x,y;//定义点的坐标
    public Point() {//确定构造函数
        setPoint(0,0);
    }
    public Point(int a,int b) {//构造函数重载 带参数构造函数
        setPoint(a,b);
    }
    public void setPoint(int a,int b) {//初始化a,b
        x=a;
        y=b;
         
    }
    public int getx() {//获得x的坐标
        return x;
         
    }
    public int gety() {//获得y的坐标
        return y;
    }
    public String toString() {
        return "["+x+","+"y"+"]";
    }
}
/* 子类元圆的定义*/
class Circle extends Point{//圆类继承父类点类
    protected double radius;//定义圆的半径
    public Circle(){
        setRadius(0);   }
    public Circle(double r,int a,int b) {
        super(a,b);//调用父类的构造函数
        setRadius(r);
    }
    public void setRadius(double r) {
        radius=(r>=0.0?r:0.0);
    }
    public double getRadius() {//获得圆的半径
        return radius;
    }
    public double area() {
        return Math.PI*radius*radius;
    }
    public String toString() {//圆的半径,以及圆心坐标转换成字符输出
        return "Center="+"["+x+","+y+"]"+";Radius="+radius;
    }
}
public class InheritanceTest{
    public static void main(String[] args) {
        Point pointRef,p;//声明两点对象
        Circle circleRef,c;//声明两点圆对象
        String output;//定义一个字符串变量
        p=new Point(30,50);//给点对象赋值
        c=new Circle(2.7,120,89);//给圆对象赋值
        //把点对象和圆对象转换成字符串然后给字符串output赋值
        output="Pointp:"+p.toString()+"\nCricle:"+c.toString();
        pointRef=c;
        output=output+"\n\nCircle c(via poineRef):"+pointRef.toString();
        circleRef=(Circle)pointRef;
        output=output+"\n\nCircle c(via poineRef):"+circleRef.toString();
        DecimalFormat precision2=new DecimalFormat("0.00");
        output+="\nAreaofc(via circleRef):"+precision2.format(circleRef.area());
        //将圆定义成点对象输出
        if(p instanceof Circle) {
            circleRef=(Circle)p;
            output+="\n\n cast successful ";
             
        }else
            output+="\n\n p dose not refer to a Circle ";
        //利用对话框输出相关信息
        JOptionPane.showConfirmDialog(null, output,"InheritanceTset",JOptionPane.INFORMATION_MESSAGE);
        //退出系统
        System.exit(0);
    }
}


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...