【知识点详解】
1. Java程序设计基础
- Java是一种广泛使用的面向对象的编程语言,具有平台无关性、安全性、可移植性和高效性等特点。在本题中,我们看到两个程序,一个是处理评分计算,另一个涉及到类和对象的定义。
2. 评分计算逻辑
- 在第一个程序中,计算青年歌手比赛的最后得分,需要去除最高分和最低分,然后计算剩余评分的平均值。这是对数组数据进行处理的典型应用。数组`a`存储了10位评委的评分,通过循环遍历数组并找到最大值和最小值,然后用其他评分求平均值。
3. Java语法与控制结构
- `(1)`处应初始化变量`sum`为0,用于累加评分。
- `(2)`处应添加代码`sum += a[i]`,将当前元素添加到总和中。
- `(3)`处的条件应该是`i < a.length - 2`,因为我们要排除最高分和最低分,所以遍历到倒数第二个元素即可。
- `(4)`处应使用`a[i]`,因为它是在累加剩余评分。
- `(5)`处应输出最高分,即`a[a.length - 1]`。
4. Java类与对象
- 第二个程序展示了类的继承和抽象类的概念。`Goods`是抽象类,包含商品名称、价格、数量和总价的成员变量,以及一个抽象方法`goods`。
- `Common`类继承自`Goods`,实现了`goods`方法,用于设置商品信息,并提供了`showBuy`方法展示购买信息。
- `Associator`类也是`Goods`的子类,代表会员用户,它重写了`showBuy`方法,添加了会员优惠的显示,并且定义了一个新的方法`showAssociator`。
5. 方法调用与成员变量
- `Common AA = new Common()`创建了一个普通用户对象,`AA.goods("电视机", 3800, 2)`设置了商品信息。
- `(5)`处应调用`AA.showBuy()`显示购买信息。
- `Associator BB = new Associator()`创建了一个会员用户对象,`BB.goods("洗衣机", 1980, 3)`设置商品信息,然后`BB.showBuy()`显示购买信息,包括会员折扣。
6. Java运算符
- 在`Associator`类的`showBuy`方法中,需要计算九折后的总价,即`(4)`处应填写`total * 0.9`。
7. Java访问修饰符
- `abstract`关键字表示抽象类,不能实例化,但可以被其他类继承。`final`关键字用于类`Associator`表示它不能被进一步继承。
8. Java方法重写
- ` Associator`类中的`showBuy`方法重写了`Common`类的`showBuy`方法,添加了会员折扣的特性。
9. Java数据类型
- 类的成员变量使用了各种数据类型,如`String`(字符串)、`float`(浮点数,用于价格)、`int`(整数,用于数量)和`double`(双精度浮点数,用于总价)。
这个题目涵盖了Java的基础语法、面向对象编程、数组处理、类的继承与重写等多个核心知识点。通过解决这些题目,学生可以加深对Java编程的理解,并能应用于实际的编程场景中。