首页 > 编程语言 >实验二 面向对象程序设计

实验二 面向对象程序设计

时间:2022-10-29 22:32:33浏览次数:56  
标签:定义 一个 子类 接口 面向对象 实验 程序设计 父类 方法

一、实验目的

1.掌握类的声明、对象的创建。 2.掌握方法的定义和调用、方法的重载。 3.掌握构造函数的使用。 4.掌握类的继承、掌握隐藏与重写(覆盖)。 5.掌握抽象类与接口。

二、实验内容

1. 问题描述

编程创建一个Box类,在其中定义三个变量表示一个立方体的长、宽和高,再定义构造函数对这三个变量进行初始化,然后定义一个方法求立方体的体积。创建一个对象,求给定尺寸的立方体的体积。

2. 程序实现

(注意写程序的规范:标识符用法、一句一行、缩格排放、合理的注释等。)

实验二 面向对象程序设计_子类

3. 运行结果截图

实验二 面向对象程序设计_父类_02

4.分析

写一个BOX类,含有公共属性长宽高,利用有参构造方法为其赋值,写一个计算体积的方法getV()计算其体积,写一个主类,实例化Box一个对象,并赋值,调用getv方法求出体积。

三、实验内容

1. 问题描述

创建一个类,在其中定义一个方法print(int a)打印一个给定的整数,然后重载print方法,依次完成下列要求,然后编写完整的程序。 (1)打印一个参数给定的double类型的数。 (2)打印两个参数给定的整数。 (3)打印一个参数给定的字符串。 设计一个完整的Java程序使用上述各个方法。(单独创建执行类或者把本类作为执行类)

2. 程序实现

(注意写程序的规范:标识符用法、一句一行、缩格排放、合理的注释等。)

实验二 面向对象程序设计_父类_03

3.运行结果截图

实验二 面向对象程序设计_实例化_04

4.分析

写一个FxPrint类,重载print方法,参数不同,分别是int,double,(int,int),String; 写一个主类实例化FxPrint一个对象,分别调用这四种方法(赋相应类型,相应数量的值)。

四、实验内容

1. 问题描述

包mycolor中有一个类Color,其中含有一个方法printColor(String color)能够输出参数指定的字符串。编写一个Java程序,引入mycolor包,并使用printColor方法输出参数指定的字符串。

2.程序实现

实验二 面向对象程序设计_父类_05

实验二 面向对象程序设计_子类_06

实验二 面向对象程序设计_实例化_07

实验二 面向对象程序设计_父类_08

3. 运行结果截图

实验二 面向对象程序设计_实例化_09

4. 分析

写一个fxColor类,package.mycolor;把该文件放在d盘mycolor文件夹里,写一个fxDemo03类,导入这个包,实例化fxColor,调用其printColor方法。

五、实验内容

1. 问题描述

(1)设计一个银行账户类BankAccount,其中包含一个double类型的成员变量mRate,表示银行存款利率,并定义setRate(double rate)方法设置并打印存款利率。 (2)创建类BankAccount的子类LoanAccount表示贷款账户,在子类中隐藏父类中的成员变量mRate,并覆盖父类中的成员方法setRate(double rate),以设置并打印贷款利率。 (3)在子类LoanAccount中定义message()方法,分别调用父类和子类中的setRate方法。 单独创建执行类或者把本类作为执行类。

2. 程序实现

实验二 面向对象程序设计_父类_10

实验二 面向对象程序设计_父类_11

实验二 面向对象程序设计_子类_12

3.运行结果截图

实验二 面向对象程序设计_父类_13

4. 分析

写一个BankAccount类,定义setRate方法,写一个LoanAccoun类,继承BankAccount,重写setRate方法,并定义一个message方法,调用父类和子类的setRate方法。分别实例化BankAccount、LoanAccoun,利用有参构造给他们赋值,输出LoanAccoun对象的message方法。

六、实验内容

1. 问题描述

若有一个接口A说明一个面积方法area(),

interface A {
public double area();
}

请设计一个三角形类GCLass实现接口A中的area()方法,GClass构造函数的参数为三边长s1、s2、s3,均为整数。单独创建执行类或者把本类作为执行类。

2. 程序实现

(注意写程序的规范:标识符用法、一句一行、缩格排放、合理的注释等。)

实验二 面向对象程序设计_父类_14

实验二 面向对象程序设计_实例化_15

实验二 面向对象程序设计_实例化_16

实验二 面向对象程序设计_实例化_17

3. 运行结果截图

实验二 面向对象程序设计_子类_18

4. 分析

定义一个接口,在接口中写一个方法。写一个接口的实现类,重写接口中的方法。调用该方法

总结

1、错误:接口内定义了方法体

实验二 面向对象程序设计_实例化_19

2、无参构造器被有参构造器覆盖

实验二 面向对象程序设计_子类_20

实验二 面向对象程序设计_实例化_21

3、implement接口的实现类,没有实现接口的抽象方法

实验二 面向对象程序设计_父类_22

实验二 面向对象程序设计_实例化_23

4、main函数写错了

实验二 面向对象程序设计_实例化_24

实验二 面向对象程序设计_父类_25

5、子类的有参构造会默认调用父类的无参构造,但父类的无参构造被覆盖了

实验二 面向对象程序设计_子类_26

实验二 面向对象程序设计_实例化_27

6、输出应该用连接符+,不能用‘,’,是违规的。

实验二 面向对象程序设计_子类_28

实验二 面向对象程序设计_子类_29

7、子类访问了父类的私有属性

实验二 面向对象程序设计_子类_30

实验二 面向对象程序设计_实例化_31

8、子类调用了父类的私有方法

实验二 面向对象程序设计_子类_32

实验二 面向对象程序设计_子类_33

9、类名写错了

实验二 面向对象程序设计_父类_34

实验二 面向对象程序设计_子类_35

10、fxRun类内没有主函数

实验二 面向对象程序设计_实例化_36

实验二 面向对象程序设计_父类_37

标签:定义,一个,子类,接口,面向对象,实验,程序设计,父类,方法
From: https://blog.51cto.com/u_15807146/5806562

相关文章

  • 实验一 Java基础与结构化编程
     一、实验目的1.熟悉JDK开发环境。2.掌握JavaApplication的程序结构和开发过程。3.掌握Java语言基础。4.掌握分支语句。5.掌握循环语句。二、实验内容问题描述 掌握JavaApplic......
  • Java重点 | 面向对象
    面向对象面向对象概述面向过程:当需要实现一个功能的时候,每一个具体的步骤都要亲力亲为,详细处理每一个细节。面向对象:当需要实现一个功能的时候,不关心具体的步骤,而是找一......
  • 实验3:OpenFlow协议分析实践
    1.搭建下图所示拓扑,完成相关IP配置,并实现主机与主机之间的IP通信。用抓包软件获取控制器与交换机之间的通信数据。搭建拓扑所使用Python代码#!/usr/bin/envpython......
  • 实验6:开源控制器实践——RYU
    (一)基本要求1.搭建下图所示SDN拓扑,协议使用OpenFlow1.0,并连接Ryu控制器,通过Ryu的图形界面查看网络拓扑。2.阅读Ryu文档的TheFirstApplication一节,运行当中的L2Switch......
  • 实验5:开源控制器实践——POX
    (一)基础要求搭建下图所示SDN拓扑,协议使用OpenFlow1.0,控制器使用部署于本地的POX(默认监听6633端口)阅读Hub模块代码,使用tcpdump验证Hub模块;h1pingh2时,h2和h3都能接......
  • 学期2022-2023-1 学号20221417 《计算机基础与程序设计》第九周学习总结
    这个作业属于哪个课程<班级的链接>(如2022-2023-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(如2022-2023-1计算机基础与程序设计第九周作业这......
  • 实验7:基于REST API的SDN北向应用实践
    (一)基本要求1.编写Python程序,调用OpenDaylight的北向接口实现以下功能(1)利用Mininet平台搭建下图所示网络拓扑,并连接OpenDaylight;(2)下发指令删除s1上的流表数据。1-2......
  • 实验2:Open vSwitch虚拟交换机实践
    实验2:OpenvSwitch虚拟交换机实践基础要求1.ovs-vsctl基础操作实践:创建OVS交换机,以ovs-xxxxxxxxx命名,其中xxxxxxxxx为本人学号。在创建的交换机上增加端口p0和p1,设置p0的......
  • 实验一:SDN拓扑实践
    一、实验目的1、能够使用源码安装Minet;2、能够使用Mininet的可视化工具生成拓扑3、能够使用Mininet的命令行生成特定拓扑4.能够使用Mininet交互界面管理SDN拓扑;5、能......
  • SEED实验:缓冲区溢出漏洞实验__网络攻防实验
    sudosysctl-wkernel.randomize_va_space=0sudosucd/binrmshln-szshsh/*stack.c//Thisprogramhasabufferoverflowvulnerability.//Ourtaskis......