zoukankan      html  css  js  c++  java
  • 继承

    题目:编写一个应用程序,创建一个矩形类,类中具有长、宽两个成员变量和求周长的方法。再创建一个矩形类的子类——正方形类,类中定义求面积方法、重写求周长的方法。在主类中,输入一个正方形边长,创建正方形对象,求正方形的面积和周长。(注意:所有类均在一个包中)

    package Test;
    
    public class test7 {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            //建立矩形类的对象兵初始化
            Rect rect = new Rect(3,4);
            //建立正方形的对象并初始化
            Square squ = new Square(7);
            double area;
            double peri;
            //如果边长不符合要求,则会发生异常
            if(rect.getLength()<=0||rect.getWidth()<=0||squ.getLenside()<=0) {
                    throw new MyExcep("矩形的边长不能少于0");
            }
            else {
                area = squ.getArea();
                peri = squ.getPeri();
                System.out.println("正方形的面积是:"+area+"正方形的周长是:"+peri);
            }
        }
    }
    class Rect {
        //定义长和宽
        private double length;
        private double width;
        //空参数构造方法
        Rect(){}
        //对矩形进行初始化
        Rect(double length,double width){
            this.length = length;
            this.width = width;
        }
        //设置一系列的访问器修改器
        public double getLength() {
            return length;
        }
        public void setLength(double length) {
            this.length = length;
        }
        public double getWidth() {
            return width;
        }
        public void setWidth(double width) {
            this.width = width;
        }
        //返回周长
        public double getPeri() {
            return (width+length)*2;
        }
    }
    class Square extends Rect{
        
        //定义边长,总感觉借用父类中的长和宽不太规范,就多写了一个边长
        private double lenside;
        //对正方形进行初始化
        Square(double lenside){
            this.lenside = lenside;
        }
        //访问器和修改器
        public double getLenside() {
            return lenside;
        }
        public void setLenside(double lenside) {
            this.lenside = lenside;
        }
        //返回周长
        public double getPeri() {
            return lenside*4;
        }
        //返回面积
        public double getArea() {
            return lenside*lenside;
        }
    }
    //定义不规范发生的异常
    class MyExcep extends RuntimeException{
        MyExcep(String msg){
            super(msg);
        }
    }

  • 相关阅读:
    eclipse javaWeb项目如何引入jar包
    Unity3D 批量图片资源导入设置
    WaitForTargetFPS
    自适应分辨率
    UnityException: Texture is not readable
    Unity bundle的制作和使用
    Unity3D之Assetbundle
    Unity使用外部版本控制SVN
    AssetBundle机制相关资料收集
    Assetbundle的杂七杂八
  • 原文地址:https://www.cnblogs.com/xiexiaofei/p/11580720.html
Copyright © 2011-2022 走看看