当前位置:   article > 正文

Java从入门到精通笔记20230209--实践训练_创建一个抽象图形类,图形类中有一个表示颜色的属性,还有一个有参的构造方法

创建一个抽象图形类,图形类中有一个表示颜色的属性,还有一个有参的构造方法

一、创建猫类。创建Cat类,类中包含表示名字属性的name,表示年龄属性的age,表示重量属性的weight,表示颜色属性额color。重新toStirng,按照以下格式固定输出。

个人代码:

书中代码:

区别在于:不知道Color类和stringBuilder方法

二、创建昆虫类。首先,创建一个表示飞行的接口Flyable,接口中口中有一个表示飞行的抽象方法fly()。然后创建按一个昆虫类Insect,类中有一个int型、表示昆虫有多少条腿的变量legs,有一个有参的的构造方法,还有一个表示繁殖的抽象方法reproduc()。接着创造一个苍蝇类,使之继承昆虫类Insect,并实现接口Flyable。最后,创建测试类Test,并在控制台输出如下信息:

苍蝇有6条腿。

苍蝇可以在空中飞行。

苍蝇繁殖方式是产卵。

飞行接口:

昆虫类:

主函数:

尬住了,好像只会写接口

三、餐馆点菜。 编写一个程序,使用向下转型模拟如下场景:餐馆里面有3位客人,1位老师、1位学生、1位医生。老师点了香辣肉丝,学生点了火腿炒面,医生点了麻辣香锅

不会

四、老虎机。老虎机有3个玻璃框,每个玻璃框都有红黄蓝三张卡片。拉下三张卡片后,每个玻璃框的3张卡片同时开始时转动。编写一个程序,使用instanceof关键字实现上述过程,并将每个玻璃框停止转动时的结果输出在控制台上。例如,黄黄蓝、红黄黄,黄红黄等

书上代码:

根据以上代码,第一次接触到:

1、Java生成随机数的办法之一(第12行代码):Math.random()生成一个[0,1)的随机数,通过int(Math.random() * 3)生成[0, 3)的随机数。

2、声明一个数组,而数组元素被初始化为各种类的对象

按照之前自己的Python思路,也是给定一个包含红黄蓝3个元素列表,根据循环三次生成的随机数作为下标选取列表里面的值。但是Python功力仅到此,不会按照类、方法的思路实现。

五、抽象的图形类。创建一个抽象的图形类,图形类中有一个表示颜色的属性、一个有参构造方法和一个抽象的获得面积的办法。让长方形类继承图形类,现在长方形类的构造方法中调用图形类的构造方法,再在长方形类中声明表示长和宽的两个属性,接着在长方形类中重写图形类的抽象方法。控制台输出如下内容:

长为6.0,宽为2.0的黄色长方形的面积是12.0

自己写的代码:

看了书中答案,做了一下修改:

跟自己的代码区别在于子类长方形类(前数2张图第8行),应该是继承(书中是super.color,照抄会报错,没搞懂)或者声明一下。也就是说,父类传参以后,子类传参应该与父类一样,其他的参数,在主函数赋值就行。

六、判断给定的3条边是否能构成三角形。创建一个抽象的图形类,图形类中有一个计算周长的方法。让三角形类继承图形类,先在三角形类继承图形类,先在三角形类声明声明三角形的三条边,在判断这三条边能否构成三角形,接着重写图形类中的抽象方法。现有长3、4、5的三条边,和长1、4、5的三条边,控制台分别输出这两组边能否构成三角形。如果能计算三角形的周长。

自己写的代码,虽然写出来了,还是有点昏昏沉沉:

书上的代码:

与自己的区别在于,判断是否是三角形,单独写了一个方法。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/233418?site
推荐阅读
相关标签
  

闽ICP备14008679号