Advertisement

北邮的Java作业第三项。

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
实验3涉及继承和多态的定义,并包含了以下五个类。这些类的属性定义如下:Employee类包含firstName、lastName、socialSecurityNumber以及SalaridEmployee类包含weeklySalary(周薪)、SalaridEmployee类包含weeklySalary(周薪)HourlyEmployee类包含wage(每小时的工钱)和hours(月工作小时数)CommisionEmployee类包含grossSales(销售额)和commissionRate(提成比率)BasePlusCommisionEmployee类包含baseSalary(月基本工资)。Employee类中规定了抽象方法earning,其作用是用于计算员工的月工资。SalaridEmployee的月工资计算方式为weeklySalary乘以4;HourlyEmployee的月工资计算方式为wage乘以hours;CommisionEmployee的月工资计算方式为grossSales乘以commissionRate;BasePlusCommisionEmployee的月工资计算方式为grossSales乘以commissionRate加上baseSalary。此外,这些类还应具备构造方法、toString方法以及属性的get/set方法。构造方法负责firstName、lastName、socialSecurityNumber等属性的初始化。具体而言,firstName和lastName需要提供get和set方法,而socialSecurityNumber仅提供get方法。其他属性则需要提供get和set方法。最后,程序生成10个员工对象,并利用随机数确定每个对象的类型,该类型可以是SalaridEmployee、HourlyEmployee、CommisionEmployee或BasePlusCommisionEmployee。所有对象引用被存储在一个数组中。随后,程序依次调用每个对象的toString方法以输出对象的相关信息,并调用earning方法来输出每个对象的月工资。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • JavaStudent.zip
    优质
    这是一个来自北京邮电大学的关于Java编程语言的学生作业文件,内容围绕着学生相关的类和对象的设计与实现。 北京邮电大学的Java选修课程提供了在线编程题解服务。内容涵盖了类的基本概念及其初步应用的学习与实践。
  • Java选修课大 购物车
    优质
    本项目是北京邮电大学Java选修课程的大作业之一,旨在通过实现一个功能完善的购物车系统来提升学生的软件开发能力。项目涵盖了用户管理、商品浏览及加入购物车等功能模块,充分运用了面向对象编程和数据库技术。 假设现在要设计一个贩卖各类书籍的电子商务网站的购物车系统。对于所有的教材类图书实行每本一元的折扣;对连环画类图书提供每本7%的促销折扣;而对非教材类的计算机图书有3%的折扣;其余书则没有折扣。使用策略模式、工厂模式和单子模式进行设计。 在这个场景中,可以将不同的书籍类型及其对应的折扣规则抽象为具体策略,并通过工厂方法创建不同类型的购物车对象来应用这些策略。例如,可以通过一个工厂类根据用户选择的具体图书类别生成相应的折扣计算逻辑实例(即具体的策略),而单例模式则用于确保在整个系统运行期间只存在唯一的、特定的购物车实例以避免不必要的资源浪费和状态同步问题。 这样的设计能够使得系统的扩展性和维护性大大提高:当需要添加新的书籍类型或修改现有类型的促销规则时,只需增加相应的策略类或者调整已有实现即可;同时由于工厂模式的存在,客户代码无需关心具体的创建过程而只关注于使用由工厂返回的对象进行操作。
  • 电大学Java
    优质
    本课程是北京邮电大学计算机专业的一门基础课,旨在通过实践项目教授学生Java编程语言的核心概念和开发技巧。学生将完成一系列设计与编码任务,以提升解决问题的能力和团队合作精神。 实验1:类的定义与对象数组使用 **任务一** 创建一个名为`Student`的学生类。该类包含以下属性和方法: - **非静态属性** - `String studentNumber`: 学生学号。 - `String studentName`: 学生姓名。 - `int markForMaths`, `markForEnglish`, 和 `markForScience`: 分别表示数学、英语与科学科目的成绩。 - **构造方法** - `Student(String number, String name)`: 构造函数,用于初始化学号和名字。 - `Student()`: 默认构造器(无参数)。 - **其他方法** - `String getNumber()` : 返回学生学号。 - `String getName()`: 返回学生姓名。 - `void enterMarks(int markForMaths, int markForEnglish, int markForScience)`: 输入三门课程的成绩。 - `int getMathsMark()`, `getEnglishMark()`, 和`getScienceMark()`:分别返回数学、英语和科学成绩。 - `double calculateAverage()`: 计算平均分,注意除数应为3.0而非整型数值以确保结果准确。分数初始值设置问题讨论:若将每个科目的初始分为零,则可能与实际得分为零的情况混淆;建议使用其他默认值或在输入前进行验证。 - `String toString()`: 返回包含学生信息的字符串,包括学号、姓名和各科目成绩及平均分。 编写`StudentTest`类来测试上述定义的功能。运行效果展示如下: ``` 请输入学生学号:2011211301 请输入学生姓名:王晓 请输入三门课成绩(数学,英语,科学):88,79,90 输出: 学号: 2011211301 姓名: 王晓 数学成绩: 88 英语成绩: 79 科学成绩: 90 平均分: 85.67 ``` **任务二** 创建一个名为`StudentList`的类,用于存储多个学生对象。定义如下属性和方法: - **成员变量** - `Student[] list`: 存储学生对象。 - `int total`: 记录当前数组中的元素个数。 - **构造函数** - `StudentList(int length)`: 初始化一个具有给定长度的列表来存储学生信息。 - **方法** - `boolean add(Student stu)` : 向列表中添加一个新的`stu`对象,成功返回true,否则false。 - `boolean remove(int no)` 和 `remove(String number)`: 分别根据位置或学号删除一个元素,并反馈操作结果(布尔值)。 - `boolean isEmpty()`: 检查数组是否为空并给出相应的判断结果。 - `Student getItem(int no)` 和`getItem(String number)`: 根据索引和学号返回对应的对象,若找不到则返回null或错误信息。 - `int getTotal()`:获取当前学生总数。 编写测试类`StudentListTest`以验证功能: ``` 菜单如下,请输入1~8代表您要执行的操作: 1. 添加一个新学生 2. 按学号删除学生 3. 根据位置移除学生信息 4. 判断列表是否为空 5. 通过索引获取指定的学生信息 6. 使用学号查找特定的记录 7. 展示所有学生的数据 8. 结束程序 操作实例: 输入1添加新用户,后续会要求你依次填写:学号、姓名及三门课的成绩。 ``` 作业命名规则为`_学号(8位)_姓名_第几次作业(1位)_类名.java`。例如: - `_09211195_王晓_1_Student.java` - `_09211195_王晓_2_studentList.java` 注意:提交时,仅上传`.java`文件而非压缩包,并确保源代码中的类名称与文件名一致以方便批改。
  • 电大学Java3
    优质
    本作业为北京邮税大学Java课程第三阶段的学习任务,涵盖面向对象编程、数据结构及算法等核心内容,旨在提升学生的编程实践能力。 实验3 继承与多态 定义以下五个类: - Employee:包含属性 firstName(名字)、lastName(姓氏) 和 socialSecurityNumber(社保号)。该类中应定义一个抽象方法 earning,用于计算员工的月工资。 - SalaridEmployee:继承自 Employee 类,并新增 weeklySalary 属性表示周薪。其月工资计算方式为:weeklySalary * 4。 - HourlyEmployee:同样继承自 Employee 类,包含 wage(每小时工钱)和 hours(每月工作时长)。该类的月工资计算公式是:wage * hours。 - CommisionEmployee:基于 Employee 类创建,并新增 grossSales(销售额) 和 commissionRate(提成比率)两个属性。此员工类型的月收入为:grossSales * commissionRate。 - BasePlusCommisionEmployee:同样继承自 Employee,增加了 baseSalary 属性表示基本月薪。此类的月工资计算公式是:(grossSales * commissionRate) + baseSalary。 每个类都应包括构造方法、toString 方法以及所有属性的 get 和 set 方法(对于 socialSecurityNumber 只提供 getter)。firstName 和 lastName 除了 getter/setter 外,还应在构造函数中初始化。 接下来需要创建一个包含10个员工对象的数组,通过随机数决定生成哪种类型的员工,并将这些对象存储在数组内。最后遍历这个数组调用每个对象的 toString 方法输出其信息以及 earning 方法计算并展示月工资。 注意:上述描述未涉及任何具体实现细节、代码示例或联系信息。
  • Java提交 Java提交
    优质
    这是一次关于Java编程语言课程中第三次作业的提交。本次作业包括了对之前学习内容的应用与实践,旨在加深学生对于Java编程的理解和掌握。 Java作业。
  • 电大学智能科学与技术专次机器智能
    优质
    这段内容是关于北京邮电大学智能科学与技术专业的学生进行的第三次机器智能课程作业。学生们在这个项目中深入学习和实践了人工智能领域的关键技术和理论,进一步提升了他们的科研能力和创新能力。 2011级北邮智能专业大三上学期的机器学习课程作业共三次,包括代码、文档和PPT,内容一般,希望能对大家有所帮助。
  • 物联网工程系《物联网工程实践》课程.zip
    优质
    本资料为北京邮电大学物联网工程系学生在《物联网工程实践》课程中完成的第三次作业,涵盖项目设计、代码实现及测试分析等内容。 物联网(IoT)起源于传媒领域,并被认为是信息技术产业的第三次革命。它通过各种信息传感设备按照特定协议连接任何物体与网络,使这些物体能够进行数据交换和通信,实现智能化识别、定位、跟踪及监管等功能。尽管核心仍然是互联网,但物联网在其基础上扩展了用户端的应用范围至物品间的直接交互。 物联网在多个领域都有广泛应用,包括智慧医疗、智能电网、环境保护、智慧建筑、智能家居以及智慧农业等。例如,在智慧医疗中,物联网技术使穿戴设备能够实时监测并记录患者的心率和血压数据,并便于患者或医生查看;而在智能电网与环保方面,则通过水电气太阳能及垃圾箱等相关设施的智能化管理来提升资源利用率并减少浪费;在智能家居领域,物联网的应用让家居环境变得更舒适、安全且高效,例如使用扫地机器人等设备。此外,在智慧农业中,物联网技术能够进行数据可视化分析、远程操控和灾害预警,从而帮助农民实现精细化耕作。 同时,公共卫生领域也受益于物联网的发展——通过更精确的感染传播监测来预防未来的流行病爆发;而零售业则利用该技术优化库存管理、广告营销以及防盗措施。然而,随着设备数量的增长,网络安全问题日益凸显,并需要采取相应对策加以解决。 根据中央网信办等三部门发布的《深入推进IPv6规模部署和应用2024年工作安排》,预计到2024年底,我国的IPv6活跃用户将达到8亿人,物联网中的IPv6连接数则有望达到6.5亿。这预示着物联网正在加速发展,并将在未来对社会生活产生更加深远的影响。 综上所述,物联网通过信息传感设备实现物与物之间的直接互联网络,在众多领域展现出了广泛的应用前景和发展潜力;但同时也面临着诸如网络安全等方面的挑战。若想了解更多关于物联网的最新技术和应用趋势,则可以关注相关行业的新闻报道和资讯更新。
  • C++超市管理系统Socket版本(课程
    优质
    本项目是为北京邮电大学大三课程设计的一份作业,实现了一个基于C++和Socket编程技术的超市管理系统。该系统旨在通过网络通信功能增强传统超市管理软件的功能性和实用性。 程序三:支持远程访问的超市管理系统描述如下: 该系统需在原有程序二的基础上进行功能扩展与改进,实现远程操作的功能,并确保能够完成包括但不限于程序一及程序二的所有需求。 具体要求: 1. 各类用户的登录和操作应在客户端(client端)执行。而实际的操作处理则由服务器端(server端)负责并返回结果给客户端显示。 2. 服务端需具备多线程能力,以支持同时为多个客户端提供服务的功能,并确保至少有三个不同的客户端能够实现并发访问。 注意事项: 1. 必须采用Socket技术来完成远程通信任务。 2. 提供命令行界面进行操作;若能进一步开发出图形用户界面,则将给予额外加分。
  • 各科目答案汇总
    优质
    本页面汇集了北京邮电大学多个科目的作业参考答案,旨在帮助学生更好地理解和掌握课程内容,提高学习效率。 北邮各科作业的答案:数学答案、英语答案、计算机科学答案等各类课程的作业答案。
  • Java-Employee类文件RAR版
    优质
    本作业为《Java程序设计》课程第三次任务,包含员工信息管理系统的Employee类实现代码及文档,采用RAR格式压缩打包。 创建四个类:Employee 类作为基类和其他三个子类(SalariedEmployee、HourlyEmployee 和 CommissionEmployee)。其中 Employee 类包含姓名和身份证号的属性,并且每个子类需要添加自己的特定信息,例如 SalariedEmployee 包含每月工资;HourlyEmployee 包含每小时工资数及工作时间数;CommissionEmployee 包含提成比例以及销售总额。同时为这些类提供适当的构造函数、用于设置和读取数据成员的方法,并考虑在子类中调用父类的构造方法或覆盖其方法的情况。编写一个应用程序,创建上述各个类的对象并展示与它们相关的详细信息。 每个属性应定义为 private 类型以确保封装性;同时实现一些重载方法来增强代码灵活性和可读性。