Java面向对象练习题多态测试

按要求编写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方法中使用接口回调的形式来测试实现

接口的类。

//Interfa接口

package 多态;

public interface InterfaceA {

	int method(int n);
}

  

//ClassA类

package 多态;

public class ClassA implements InterfaceA {

	@Override
	public int method(int n) {
		int sum=0;
		for(int i=0;i<=n;i++)
		{
			sum+=i;
		}
		return sum;
	}

}

  

//ClassB类

package 多态;

public class ClassB implements InterfaceA {

	@Override
	public int method(int n) {
		int ji=1;
		for(int j=1;j<=n;j++)
		{
			ji*=j;
		}
		return ji;
	}

}

  

//主类Test

package 多态;

public class Test {

	public static void main(String[] args) {

		InterfaceA a=new ClassA();
		System.out.println(a.method(4));
		InterfaceA b=new ClassB();
		System.out.println(b.method(4));

	}

}

  

运行结果

时间: 2024-08-25 20:46:05

Java面向对象练习题多态测试的相关文章

Java面向对象练习题多态之字母表

34.编写2个接口:InterfaceA和InterfaceB:在接口InterfaceA中有个方法void printCapitalLetter():在接口InterfaceB中有个方法void printLowercaseLetter():然 后写一个类Print实现接口InterfaceA和InterfaceB,要求printCapitalLetter()方法 实现输出大写英文字母表的功能,printLowercaseLetter()方法实现输出小写英文 字母表的功能.再写一个主类E,在主

Java面向对象的多态

Java中多态的概念是面向对象中除封装和继承外非常重要的知识点,也是Java面向对象三大特性最后一个特性 多态其实就是指对象存在的多种形态,多态分为引用多态和方法多态 引用多态的含义就是:父类的引用可以指向它本类的对象,不仅如此父类的引用还可以指向子类的对象,这就是引用多态 用简单的代码来看一下引用多态的含义: 动物类:Animal 1 public class Animal { 2 public Animal(){ 3 System.out.println("Animal类的构造方法被执行&q

JavaSE入门学习18:Java面向对象之多态

一Java多态 多态是同一个行为具有多个不同表现形式或形态的能力. 多态性是对象多种表现形式的体现.比方我们说"宠 物"这个对象.它就有非常多不同的表达或实现,比方有小猫.小狗.蜥蜴等等.那么我到宠物店说"请给我一仅仅宠物", 服务员给我小猫.小狗或者蜥蜴都能够,我们就说"宠物"这个对象就具备多态性. 接下来让我们通过实例来了解Java的多态. 实例: Vegetarian.java源文件代码: <span style="font

Java面向对象练习题继承之物种

21.编写一个Java应用程序,该程序包括3个类:Monkey类.People类和主类 E.要求: (1) Monkey类中有个构造方法:Monkey (String s),并且有个public void speak() 方法,在speak方法中输出“咿咿呀呀......”的信息. (2)People类是Monkey类的子类,在People类中重写方法speak(),在speak方法 中输出“小样的,不错嘛!会说话了!”的信息. (3)在People类中新增方法void think(),在thi

java 面向对象练习题2

//编写一个Java应用程序,该程序中有3个类:Lader.Circle和主类A.具体要求如下:Lader类具有类型为double的上底.下底.高.面积属性,具有返回面积的功能,包括一个构造方法对上底.下底.高进行初始化.Circle类具有类型为double的半径.周长和面积属性,具有返回周长.面积的功能,包括一个构造方法对半径进行初始化.主类A用来测试类Lader和类Circle的功能 package com.lianxi; public class Lader { double sd,xd,

java 面向对象练习题4

package com.lianxi; public class Student { // 编写Java应用程序.首先,定义描述学生的类——Student,包括学号(int). // 姓名(String).年龄(int)等属性:二个方法:Student(int stuNo,String name,int age) // 用于对对象的初始化,outPut()用于输出学生信息.其次,再定义一个主类—— // TestClass,在主类的main方法中创建多个Student类的对象,使用这些对象来测

Java面向对象练习题之银行存取款

编写Java应用程序.首先定义一个描述银行账户的Account类,包括成员变 量“账号”和“存款余额”,成员方法有“存款”.“取款”和“余额查询”.其次, 编写一个主类,在主类中测试Account类的功能. String ZhangHao; double YuE; Blank(String ZhangHao,double YuE) { this.ZhangHao=ZhangHao; this.YuE=YuE; } double cunKuan(double qianshu) { if(qians

Java面向对象练习题之梯形面积

编写一个Java应用程序,该程序中有2个类MianJi.主类A.具体要求如下:MianJi类具有类型为double的上底.下底.高.面积属性,具有返回面积的功能,包括一个构造方法对上底.下底.高进行初始化.主类A用来测试类MianJi的功能. double ShangDi; double XiaDi; double Gao; double Mianji; MianJi(double ShangDi,double XiaDi,double Gao) { //使用参数来初始化属性 //this代表当

对Java面向对象中多态的理解

理解的要点:多态意味着父亲的变量可以指向子类对象 面向对象程序设计的三大支柱是封装.继承和多态 封装对外把相应的属性和方法实现的细节进行了隐藏.继承关系使一个子类继承父亲的特征,并且加上了一些新的特征.子类是它的父亲的特殊化, 每一个子类的实例都是其父亲的实例,但是反过来就不成立.例如:每个圆都是一个几何对象,但并非每一个几何对象都是圆.因此,总可以将子类 的实例传给需要父亲型的参数.考虑如下的代码. class Person{ String name = "John"; public