week15---6月9日

本文包含了一系列编程任务,涉及幂运算、阶乘计算、倍数判断、倍数判断、斐波那契数列、形状面积计算、船舶信息展示、点与圆属性操作、船只与游艇属性管理、人员与学生信息展示等核心内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

综合练习

1、编写一个Power方法,用于计算一个整数的n次幂。在主方法中输入两个正整数:m,n。调用Power方法,计算m的n次幂。并输出结果。

 

2、编写一个Factorial方法,求正整数的阶乘。在主方法中输入小于20的正整数,调用Factorial方法,输出计算结果。

 

3、编写程序,定义方法Multiple,确定两个数中的第二个数是否是第一个数的倍数。该方法带两个整形变量,若第二个变量的值是第一个变量的值的倍数,则返回true;否则返回false。

 

4、编写一个方法以判断一个数是否是另一个数的3倍,如果是,返回true,否则返回false。在主方法中输入两个数,进行判断,并输出判断结果。

 

5、编写一个方法求斐波那契序列第n项的值。主方法输入一个小于20的正整数n,调用方法,返回n项的值,并输出。

 

6、创建一个抽象类Shape,拥有实例属性点坐标X,Y,拥有抽象方法面积。

创建Circle圆形类,继承抽象类,拥有属性半径。

创建一个Circle类的实例对象,输出对象属性信息。

 

7、创建一个Boat类,它的属性有:注册号(RegNo)、船长(Length)、年份(Year)。写一个方法,ToAllShow()返回类实例的属性值。

创建帆船类Sailboat,并继承Boat类,帆船具有龙骨深度(KeelDepth),马达类型(MdType)两个属性。重写Boat类的ToAllShow()方法。

编写一个程序,测试帆船类。(第六章课后练习题)

 

8、创建一个Point类,该类有三个属性,为点坐标的X,和Y;属性Area为面积。具有方法Print,返回属性值。创建Circle类,继承Point类。具有新的属性,半径。重写属性Area,重写方法Print。创建一个测试类,创建Circle类的一个实例对象。

 

9、创建一个船(Boat)类,具有属性船长(Length)、制作厂商(Management),和一个返回属性信息的方法(Tell)。

创建一个游艇类,继承船类,具有属性马力。

创建游艇类的一个实例对象,输出该对象的所有属性情况。

 

10、编写一个Person类。为类创建构造函数。该类的属性有姓名、性别。为类创建一个方法,用于显示类的两个属性值,写一个方法Print,用于返回属性值。

创建一个Student类,继承Person类。同时Student类也有自己的属性:学号、专业。并重写Print方法,返回属性值。

编写测试类,创建一个Student类的对象,并输出值。

 


《Java程序设计》课程实验指导书程序代码(答案)(实验四:java继承与多态),个人原创,仅供参考与交流。 希望多多交流,共同进步! 实验四 java继承与多态 一、实验目的: 掌握继承、多态的概念与实现方法; 掌握包接口的定义使用方法; 了解JAVA语言实现多继承的途径; 二、实验内容: 1.分别编写两个Point2D,Point3D来表示二维空间三维空间的,使之满足下列要(1) Point2D有两个整型成员变量x, y (分别为二维空间的X,Y方向坐标)Point2D的构造方法要实现对其成员变量x, y的初始化。 (2)Point2D有一个void型成员方法offset(int a, int b),它可以实现Point2D的平移。 (3)Point3D是Point2D的直接子类,它有有三个整型成员变量x,y,z (分别为三维空间的X,Y,Z方向坐标)Point3D有两个构造方法:Point3D(int x,int y,int z)Point3D(Point2D p,int z),两者均可实现对Point3D的成员变量x, y,z的初始化。 (4)Point3D有一个void型成员方法offset(int a, int b,int c),该方法可以实现Point3D的平移。 (5)Point3D中的主函数main()中实例化两个Point2D的对象p2d1,p2d2,打印出它们之间的距离,再实例化两个Point2D的对象p3d1,p3d2,打印出他们之间的距离。 2.定义抽象类Shape,抽象方法为showArea()面积并显示,定义矩形类Rectangle,正方形类Square,圆类 Circle,根据各自的属性,用showArea方法出各自的面积,在main方法中构造3个对象,调用showArea方法。 定义接口DiagArea,其中包含方法double getDiagonal()对角线长, double getArea()面积定义一个矩形类,实现此接口,并自行扩充成员变量方法,定义一个正方形类继承矩形类(如矩形有长w宽h,正方形有边x,并有相应的构造函数,有一个方法中一次直接显示边长、面积对角线长),在另一类中的主方法里使用测试该类。 三、实验要: 1. 能实现类的继承关系; 2. 用多种方法创建各个类的对象; 3. 程序应包括各个被调用方法的执行结果的显示。 4. 写出实验报告。要记录编译执行Java程序当中的系统错误信息提示,并给出解决办法。(附运行界面、源代码)。 四、实验步骤: 1.(第1题)定义Point2D,及定义它的属性方法; 定义子类Point3D,及定义它的属性方法;在Point3D中的主函数main()中实例化两个Point2D的对象,并通过这两个对象调用它们的属性方法,输出方法执行结果。 2.(第2题)定义抽象类Shape,抽象方法为showArea(),再定义矩形类Rectangle,正方形类Square,圆类 Circle,各自的属性。定义主类、主方法,在main方法中构造3个对象,调用showArea方法;定义接口DiagArea,其中包含方法double getDiagonal(),在主main方法中输出方法执行结果。 五、自做作实验 1.定义一个描述人的基本类,该类包括人的性别出生两个数据成员,以及设置获取这些属性值的方法成员;再定义一个大学生类,使大学生类具有人的所有属性外,还具有姓名、学号,大学入学成绩,籍贯属性以及设置获取这些属性值的方法成员;编写完整的程序,完成一个具有班级学生信息管理功能的程序。 2创建一个接口Shape,其中有抽象方法area,类Circle 、Rectangle实现area方法计算其面积并返回。又有Star实现Shape的area方法,其返回值是0,Star类另有一返回值boolean型方法isStar;在main方法里创建一个Vector,根据随机数的不同向其中加入Shape的不同子类对象(如是1,生成Circle对象;如是2,生成Rectangle对象;如是3,生成Star对象)。然后将Vector中元素依次取出,判断其是否为Star类。如是返回其是个Star。否则返回其面积。 3..学校中有老师学生两类人,而在职研究生既是老师又是学生,对学生的管理对教师的管理在他们身上都有体现。 1)设计两个信息管理接口StudentManageInterfaceTeacherManageInterface。其中,StudentInterface接口包括setFee()方法getFee()方法,分别用于设置获取学生的学费;TeacherInterface接口包括setPay()方法getPay()方法,分别用于设置获取教师的工资 2) 定义一个研究生类Graduate,实现StudentInterface接口TeacherInterface接口,它定义的成员变量有name(姓名)、sex(性别)、age(年龄)、fee(每学期学费)、pay(月工资)。 3) 创建一个姓名为“zhangsan”的研究生,统计他的年收入学费,如果收入减去学费不足2000元,则输出“provide a loan”(需要贷款)信息。 提示: 1)定义两个接口,分别在其中申明两个方法。 2)定义主类Graduate,实现这两个接口。 3)定义主类的成员变量,构造方法。 4)给出四个接口方法的实现。 5)给出一个计算是否需要贷款的方法,在里面统计年收入学费,并输出是否需要贷款的信息。 6)写main方法。在其中创建一个姓名为“zhangsan”的研究生,调用计算是否需要贷款的方法。
包与接口实验报告 实验 包与接口 【实验目的】 1. 了解Java 中包(package)、接口(interface)的作用。 2. 掌握包、接口设计方法。 【实验要】 1. 了解Java 系统包的结构。 2. 掌握创建自定义包的方法。 3. 掌握使用系统接口的技术创建自定义接口的方法。 【实验步骤】 一.了解并使用Java 的系统包 1. API 包、接口、异常处理的作用 包是类接口的集合。利用包可以把常用的类或功能相似的类放在一个包中。Java 语言提供系统包,其中包含了大量的类,可以在编写Java 程序时直接引用它们。为便于管理使用它们,将这些类分为了不同的包。包又称类库或API 包,所谓API(Application Program Interface)即应用程序接口。API 包—方面提供丰富的类与方法供大家使用,如画图形、播放声音等,另一方面又负责系统软硬件打交道,圆满实现用户程序的功能。所有Java API 包都以“java.”开头,以区别用户创建的包。 常见Java系统包及其作用: 1)语言包(java.lang):提供的支持包括字符串处理、多线程处理、异常处理、数学函数处理等,可以用它简单地实现Java程序的运行平台。 2)实用程序包(java.util):提供的支持包括哈希表、堆栈、可变数组、时间期等。 输入输出包(java.io):用统一的流模型来实现所有格式的I/O,包括文件系统、网络、输入。 3)网络包(java.net):支持Internet的TCP/IP协议,用于实现Socket编程;提供了与Internet的接口,支持URL连接,WWW的即时访问,并且简化了用户/服务器模型的程序设计。 4)抽象图形用户接口包(javax.swing):实现了不同平台的计算机的图形用户接口部件,包括窗口、菜单、滚动条、对话框等,使得 Java可以移植到不同的平台。 接口解决了Java 不支持多重继承的问题,可以通过实现多个接口达到与多重继承相同的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值