实验内容:接口、多态 1、编写2个接口:InterfaceA和InterfaceB;在接口InterfaceA中有个方法void printCapitalLetter();在接口InterfaceB中有个方法void printLowercaseLetter();然后写一个类Print实现接口InterfaceA和InterfaceB,要求printCapitalLetter()方法 实现输出大写英文字母表的功能,printLowercaseLetter()方法实现输出小写英文字母表的功能。再写一个主类E,在主类E的main方法中创建Print的对象并赋值给InterfaceA的变量a,对象a调用printCapitalLetter方法;最后再在主类E的main方法中创建Print的对象并赋值给InterfaceB的变量b,对象b调用printLowercaseLetter方法。 2、按要求编写Java程序: (1)编写一个接口:InterfaceA,只含有一个方法int method(int n); (2)编写一个类:ClassA来实现接口InterfaceA,实现int method(int n)接口方法时,要求计算1到n的和; (3)编写另一个类:ClassB来实现接口InterfaceA,实现int method(int n)接口方法时,要求计算n的阶乘(n!); (4)编写测试类E,在测试类E的main方法中使用接口回调的形式来测试实现接口的类。

时间: 2024-03-02 12:52:54 浏览: 24
1. 编写两个接口 InterfaceA 和 InterfaceB: ``` public interface InterfaceA { void printCapitalLetter(); } public interface InterfaceB { void printLowercaseLetter(); } ``` 2. 编写一个实现接口 InterfaceA 和 InterfaceB 的类 Print: ``` public class Print implements InterfaceA, InterfaceB { @Override public void printCapitalLetter() { for (char c = 'A'; c <= 'Z'; c++) { System.out.print(c + " "); } System.out.println(); } @Override public void printLowercaseLetter() { for (char c = 'a'; c <= 'z'; c++) { System.out.print(c + " "); } System.out.println(); } } ``` 3. 在主类 E 中使用 Print 的对象分别赋值给 InterfaceA 和 InterfaceB 的变量,并调用相应的方法: ``` public class E { public static void main(String[] args) { InterfaceA a = new Print(); a.printCapitalLetter(); InterfaceB b = new Print(); b.printLowercaseLetter(); } } ``` 4. 编写一个接口 InterfaceA 和两个实现类 ClassA 和 ClassB,分别计算 1 到 n 的和和 n 的阶乘: ``` public interface InterfaceA { int method(int n); } public class ClassA implements InterfaceA { @Override public int method(int n) { int sum = 0; for (int i = 1; i <= n; i++) { sum += i; } return sum; } } public class ClassB implements InterfaceA { @Override public int method(int n) { int result = 1; for (int i = 1; i <= n; i++) { result *= i; } return result; } } ``` 5. 在测试类 E 的 main 方法中使用接口回调的形式来测试实现接口的类: ``` public class E { public static void main(String[] args) { InterfaceA a = new ClassA(); System.out.println("1+2+...+n 的和为:" + a.method(10)); InterfaceA b = new ClassB(); System.out.println("n 的阶乘为:" + b.method(5)); } } ```

相关推荐

最新推荐

recommend-type

java经典面试2010集锦100题(不看你后悔)

C) 抽象类中至少需要有一个方法被定义为抽象方法,在该方法前加abstract,把该方法定义为抽象方法。 D) 抽象类中可以没有抽象方法,即所有的方法全部都有实现体。但是依旧不能为抽象类定义对象。 题目18:b 下面...
recommend-type

net学习笔记及其他代码应用

解2: select top 10 * from A where id &gt; (select max(id) from (select top 30 id from A )as A) 34.面向对象的语言具有________性、_________性、________性 答:封装、继承、多态。 35.能用foreach遍历访问的...
recommend-type

Java面试笔试资料大全

1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...
recommend-type

微信小程序-番茄时钟源码

微信小程序番茄时钟的源码,支持进一步的修改。番茄钟,指的是把工作任务分解成半小时左右,集中精力工作25分钟后休息5分钟,如此视作种一个“番茄”,而“番茄工作法”的流程能使下一个30分钟更有动力。
recommend-type

激光雷达专题研究:迈向高阶智能化关键,前瞻布局把握行业脉搏.pdf

电子元件 电子行业 行业分析 数据分析 数据报告 行业报告
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

用 Python 画一个可以动的爱心

好的,我可以帮助您使用Python来绘制一个动态的爱心。您可以使用turtle库来实现。以下是实现代码: ```python import turtle import math # 设置画布和画笔 canvas = turtle.Screen() canvas.bgcolor("black") pencil = turtle.Turtle() pencil.speed(0) pencil.color("red", "pink") pencil.pensize(3) # 定义爱心函数 def draw_love(heart_size, x_offset=0, y_offset=0):
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。