0
点赞
收藏
分享

微信扫一扫

Java面向对象

肉肉七七 2022-02-10 阅读 66

1、写一个名为 Account 的类模拟账户。该类包括的属性:账号 id,余额 balance,年利率 annualInterestRate;包含的方法:访问器方法(getter 和setter 方法),返回月利率的方法 getMonthlyInterest(),取款方法 withdraw(),存款方法deposit()。创建 Account 类的一个子类 CheckAccount 代表可透支的账户,该账户中定义一个属性overdraft 代表可透支限额。在 CheckAccount 类中重写 withdraw 方法,其算法如下:如果(取款金额<账户余额),可直接取款如果(取款金额>账户余额),计算需要透支的额度判断可透支额 overdraft 是否足够支付本次透支需要,如果可以将账户余额修改为 0,冲减可透支金额如果不可以提示用户超过可透支额的限额。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、定义员工类Employee,包含姓名、工号和工资,包含计算奖金方法bonus,普通员工和经理都是员工,计算奖金的方法为工资*奖金系数,普通员工的奖金系数为1.5(常量),经理为2(常量),分别实现bonus方法,创建对象测试。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、封装一个西游记人物类Person:包含私有属性:姓名(name)、身高(height)、武器(weapon)、种族(race),并提供get方法和set方法。在测试类中实例化三个对象:tangseng(唐僧)、sunwukong(孙悟空)、baigujing(白骨精),分别设置他们的种族为:人族、仙族、妖族在打印对象时,按照例如:“姓名:孙悟空;种族:仙族”的格式在控制台输出信息。提供一个技能方法void skill(),这个方法根据当前对象name属性判断技能,如果是孙悟空,就打印“七十二变”,如果是唐僧,就打印“紧箍咒”,如果是白骨精,就打印“九阴白骨爪”,在测试类中调用这个方法。
在这里插入图片描述
在这里插入图片描述

4、== 与 equals方法的区别

==:
基本数据类型,比较值是否相同。
引用数据类型,比较的是地址值是否相同。
equals:
引用数据类型,比较的是地址值是否相同,与==功能相同。而String类重写了equals方法,比较的是内容是否相同。
自定义对象一般需要重写equals方法,进行数据内容比较才更有意义

5、父类GeometricObject代表几何形状,子类Circle代表圆形,MyRectangle代表矩形。定义一个测试类GeometricTest,编写equalsArea方法测试两个对象的面积是否相等,编写displayGeometricObject方法显示对象的面积。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6、简述接口的特点以及接口与抽象类的区别

1、实现方法:
抽象类中可以有已经实现的方法,因为存在抽象方法,所以必须是抽象类
接口中只能包含抽象方法,抽象方法是没有被实现的,只能被重写
2、子类使用的关键词不一样
抽象类使用extends来继承,抽象类就是用来被继承的,所包含的抽象方法也需要被重写
接口使用implement关键字来实现,提供接口中所有声明方法的实现
举报

相关推荐

JAVA 面向对象

JAVA - “面向对象”?

java面向对象

Java — 面向对象

java 面向对象

JAVA面向对象

Java 面向对象

Java——面向对象

0 条评论