设计一个几何图形的面积计算器,希望这个计算器可以计算圆、三角形和矩形等图形的面积,主要包括了抽象类Shape与其2个子类、面积计算器类Calculator、以及主类Main的设计。

设计一个几何图形的面积计算器,希望这个计算器可以计算圆、三角形和矩形等图形的面积,主要包括了抽象类Shape与其2个子类、面积计算器类Calculator、以及主类Main的设计。


参考答案和解析
首先要明白这道题目的考查点是什么,一是大家首先要对计算机原理的底层细节要清楚、要知道加减 法的位运算原理和知道计算机中的算术运算会发生越界的情况,二是要具备一定的面向对象的设计思想。 首先,计算机中用固定数量的几个字节来存储的数值,所以计算机中能够表示的数值是有一定的范围 的,为了便于讲解和理解,我们先以byte 类型的整数为例,它用1 个字节进行存储,表示的最大数值范围 为-128 到+127。-1 在内存中对应的二进制数据为11111111,如果两个-1 相加,不考虑Java 运算时的类型提 升,运算后会产生进位,二进制结果为1,11111110,由于进位后超过了byte 类型的存储空间,所以进位部 分被舍弃,即最终的结果为11111110,也就是-2,这正好利用溢位的方式实现了负数的运算。-128 在内存 中对应的二进制数据为10000000,如果两个-128 相加,不考虑Java 运算时的类型提升,运算后会产生进位, 二进制结果为1,00000000,由于进位后超过了byte 类型的存储空间,所以进位部分被舍弃,即最终的结果 为00000000,也就是0,这样的结果显然不是我们期望的,这说明计算机中的算术运算是会发生越界情况 的,两个数值的运算结果不能超过计算机中的该类型的数值范围。由于Java中涉及表达式运算时的类型自 动提升,我们无法用byte 类型来做演示这种问题和现象的实验,大家可以用下面一个使用整数做实验的例 子程序体验一下: int a = Integer.MAX_VALUE; int b = Integer.MAX_VALUE; int sum = a + b; System.out.println(“a=”+a+”,b=”+b+”,sum=”+sum); 先不考虑long 类型,由于int 的正数范围为2 的31 次方,表示的最大数值约等于2*1000*1000*1000, 也就是20 亿的大小,所以,要实现一个一百亿的计算器,我们得自己设计一个类可以用于表示很大的整数, 并且提供了与另外一个整数进行加减乘除的功能,大概功能如下: ()这个类内部有两个成员变量,一个表示符号,另一个用字节数组表示数值的二进制数 ()有一个构造方法,把一个包含有多位数值的字符串转换到内部的符号和字节数组中 ()提供加减乘除的功能 public class BigInteger { int sign; byte[] val; public Biginteger(String val) { sign = ; val = ; } public BigInteger add(BigInteger other) { } public BigInteger subtract(BigInteger other) { } public BigInteger multiply(BigInteger other) { } public BigInteger divide(BigInteger other) { } } 备注:要想写出这个类的完整代码,是非常复杂的,如果有兴趣的话,可以参看jdk 中自带的 java.math.BigInteger 类的源码。面试的人也知道谁都不可能在短时间内写出这个类的完整代码的,他要的 是你是否有这方面的概念和意识,他最重要的还是考查你的能力,所以,你不要因为自己无法写出完整的 最终结果就放弃答这道题,你要做的就是你比别人写得多,证明你比别人强,你有这方面的思想意识就可 以了,毕竟别人可能连题目的意思都看不懂,什么都没写,你要敢于答这道题,即使只答了一部分,那也 与那些什么都不懂的人区别出来,拉开了距离,算是矮子中的高个,机会当然就属于你了。另外,答案中 的框架代码也很重要,体现了一些面向对象设计的功底,特别是其中的方法命名很专业,用的英文单词很 精准,这也是能力、经验、专业性、英语水平等多个方面的体现,会给人留下很好的印象,在编程能力和 其他方面条件差不多的情况下,英语好除了可以使你获得更多机会外,薪水可以高出一千元。

相关考题:

“附件”中的计算器系统默认的类型是( ),在进行计算器类型的切换时可以( )菜单。A.科学型计算器B.标准型计算器C.编辑D.查看

请编写一个完整的Java Application程序,能够计算圆的周长和面积。 要求:(1)定义点类CPoint;(2)定义圆类CCircle继承自类CPoint,类中属性包括:圆心,半径,类中方法包括:求周长perimeter()、求面积area();(3)定义主类CCircleDemo,利用类CCircle输出一个圆的圆心,半径,周长和面积

运用财务计算器相对于查表法的优点包括( )。A.财务计算器操作简便B.财务计算器只可以算到小数点以下若干位C.财务计算器可精确算出所需的投资报酬率或期数D.财务计算器可以算到每月的现金流量,结果没有算到年再除以12精确

请设计一个一百亿的计算器

采用 C#语言及面向对象的方法,设计一个几何图形面积计算的程序,要求能够实现对正三角形、圆形、正方形面积的计算。用户输入形状、边长(半径),程序出处形状的面积。

“附件”中的计算器系统默认的类型是(),在进行计算器类型的切换时可以使用“()”菜单。 A.科学型计算器B.标准型计算器C.编辑D.查看

“附件”中的计算器系统默认的类型是标准型计算器,在进行计算器类型的切换时可以使用“查看”菜单。 A.错误B.正确

甲公司在进入袖珍计算器市场之前,该市场基本被乙公司低质低价的计算器和丙公司的高质高价计算器所支配。甲公司以中等价格和中等质量推出了第一批计算器。然后,它逐渐在每一端上增加机型。它推出了比较好的计算器,但价格与乙公司的一样,甚至更低,最终击败了乙公司;它又设计了一种价格低于丙公司,但质量上乘的计算器,夺走了丙公司享有在高档市场上的份额。对于甲公司采用的策略,以下分析正确的是( )。

计算器按用途可分为(  )。 A. 专业计算器和通用计算器 B. 专业计算器和数字计算器 C. 通用计算器和模拟计算器 D. 数字计算器和现代计算器

利用几何图形计算法进行土地面积量算,常将规则图形分割成矩形、(  )等简单的几何图形。A.三角形B.圆形C.梯形D.扇形E.椭圆

“附件”中的计算器系统默认的类型是标准型计算器,在进行计算器类型的切换时可以使用“查看”菜单。

新版IPHONE客户端提供的工具包括()。A、个人存款计算器B、个人贷款计算器C、基金买卖计算器D、股票买卖计算器

windows XP提供了两种计算器,即标准计算器和科学计算器。

执行()步骤,启动计算器A、单击“开始”按钮——“程序”——“附件”——“计算器”B、“程序”——“附件”——单击“开始”按钮——“计算器”C、“程序”——单击“开始”按钮——“附件”——“计算器”D、单击“开始”按钮——“附件”——“附件”——“计算器”

几何图形计算法计算面积时,主要用于()。A、宗地面积B、地类面积C、宗地内建筑占地面积D、建筑面积量算E、面积汇总统计

利用几何图形计算法进行土地面积量算,常将规则图形分割成矩形、()等简单的几何图形。A、三角形B、圆形C、梯形D、扇形E、椭圆

“附件”中的计算器系统默认的类型是(),在进行计算器类型的切换时可以使用“()”菜单。A、科学型计算器B、标准型计算器C、编辑D、查看

几何图形计算法是根据实地丈量的距离计算面积,将规则图形分割成简单的矩形、()等简单的几何图形,分别计算面积并相加得到所需图形的面积。A、三角形B、圆形C、梯形D、扇形E、椭圆

新核心系统界面常用工具栏上像计算器的图标代表()。A、常用计算器B、贷款利率计算器C、零存整取计算器D、汇率计算器

多选题利用几何图形计算法进行土地面积量算,常将规则图形分割成矩形、()等简单的几何图形。A三角形B圆形C梯形D扇形E椭圆

判断题windows XP提供了两种计算器,即标准计算器和科学计算器。A对B错

单选题在个人客户营销管理系统(简称PBMS)中,()用于协助客户经理为客户计算各类个人人民币存款业务、贷款业务、外汇业务、黄金买卖业务,以及国债、基金、保险、债券等中间业务的本息、收益等数据。A存款计算器B贷款计算器C理财计算器D财务计算器

单选题执行()步骤,启动计算器A单击“开始”按钮——“程序”——“附件”——“计算器”B“程序”——“附件”——单击“开始”按钮——“计算器”C“程序”——单击“开始”按钮——“附件”——“计算器”D单击“开始”按钮——“附件”——“附件”——“计算器”

多选题几何图形计算法计算面积时,主要用于()。A宗地面积B地类面积C宗地内建筑占地面积D建筑面积量算E面积汇总统计

多选题几何图形计算法是根据实地丈量的距离计算面积,将规则图形分割成简单的矩形、()等简单的几何图形,分别计算面积并相加得到所需图形的面积。A三角形B圆形C梯形D扇形E椭圆

判断题“附件”中的计算器系统默认的类型是标准型计算器,在进行计算器类型的切换时可以使用“查看”菜单。A对B错

单选题新核心系统界面常用工具栏上像计算器的图标代表()。A常用计算器B贷款利率计算器C零存整取计算器D汇率计算器

单选题OCRM系统中的理财计算器有外币理财计算器、个人理财计算器、国债理财计算器和()理财计算器几种。A外币B个人C国债D股票