通信工程164班吴勃:面向对象Java实验——抽象类、继承与多态
需积分: 11 145 浏览量
更新于2024-07-17
收藏 556KB DOC 举报
在本次大三Java上机实验中,通信工程164班的吴勃同学针对Java语言的面向对象编程进行了深入实践。实验的目标旨在帮助学生理解并掌握Java的基本概念和技术,包括类的声明、对象的创建、成员变量和方法的特性和使用、类的构造方法、修饰符、继承、重载、覆盖以及多态性。
首先,实验的核心是设计一个抽象类Person,这个类包含了基础的属性如`int Id`(编号)、`String name`(姓名)、`protected int height`(身高,由于保护权限,不能直接访问)、`private int age`(年龄,私有属性,仅在类内部访问)和两个抽象方法`abstract void showBasics()`(输出基本信息)和`abstract void showPrivacy()`(输出隐私信息)。抽象类不能实例化,它主要用于定义共享的行为和状态,以便于子类继承。
接着,学生被要求创建两个继承自Person类的具体类:Teacher和Student。Teacher类扩展了Person,增加了`int salary`(工资)和`void assignment()`(布置作业)两个成员变量和方法。同样,Student类也增加了`int score`(分数)和`void doHomework()`(做作业)这两个属性和方法。通过这些子类,体现了面向对象的继承性,即子类可以继承父类的属性和方法,并且可以根据需要添加自己的特性和行为。
在包结构上,Person类放在`pPack`包中,而主类、Teacher和Student类分别放在`tsPack`包中。这展示了Java中的包管理机制,用于组织和管理相关的类和类库,避免命名冲突。
在主类中,学生需要实例化Teacher和Student对象,并利用Person类的公共成员(公开的编号、姓名和身高,年龄受限于访问权限)来展示它们的基本信息。同时,通过调用Teacher类的`showPrivacy()`方法输出工资,以及Student类的`showPrivacy()`方法输出分数,实现了多态性,即不同的子类对象调用同一方法时,显示的是各自特有的行为。
在编写程序时,作者使用了Java的注释功能,不仅标注了作者信息,还表达了对Java编程的热情和对自己能力的信心。程序源代码应该包括抽象类Person的定义、具体类Teacher和Student的实现,以及主类的实例化和信息输出部分。完成这个实验后,学生不仅能巩固Java基础,还能提升面向对象设计和继承多态等高级特性。
整个实验既锻炼了学生的编程技能,又培养了他们理解和应用面向对象编程思想的能力,是Java学习的重要实践环节。
2020-12-21 上传
2011-05-09 上传
2021-03-30 上传
2013-12-15 上传
2019-04-25 上传
2009-02-22 上传
2011-06-10 上传
csdnwbdream
- 粉丝: 97
- 资源: 16
最新资源
- 企业人事管理系统论文
- [计算机科学经典著作].Prentice.Hall.Bruce.Eckel.Thinking.In.C++,.Second.Edition.Volume.2.Standard.Libraries.Advanced.Topics
- SAPConnectiongToc#
- [计算机科学经典著作].Prentice.Hall.Bruce.Eckel.Thinking.In.C++,.Second.Edition.Volume.1
- 信息安全技术介绍(第一章)
- pro_dns_and_bind
- 基于贝叶斯算法的垃圾邮件过滤技术的研究与改进
- 企业人事管理系统论文
- c++builder的自定义属性
- Flex 3 CookBook 简体中文
- Core Java. 8th Edition
- Oracle 程序开发指南
- ATM 原理 V1.0
- ADSL原理及其应用
- 操作系统课程习题答案
- 基于ASP的网上选课论文