Java作业

package homework03;
import java.util.Scanner;
/*
* 编写一个类,该类有一个方法
* public int f(int a,int b){
*
* }
* 然后编写一个该类的子类,要求重写方法f(),而且重写的方法将返回两个整数的最小公倍数。要求:
* 在重写的方法的方法体中首先调用被隐藏的方法返回a和b的最大公约数m,然后将a*b/m返回;在应用程序的
* 主类中分别使用父类和子类创建对象,并分别调用方法f()计算两个正整数的最大公约数和最小公倍数。
*/
class Father{
public int f(int a,int b){ //返回最大公约数
int r;
do {
if (a < b) {
int t = a;
a = b;
b = t;
}
r = a % b;
a= b;
b = r;
} while (r != 0);
return a;
}
}
class Son extends Father{
public int f(int a,int b){ //重写父类函数public int f(int a,int b);返回最小公倍数。
return a*b/super.f(a, b);
}
}
public class ch05_1 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("请输入第一个整数 : ");
int a = s.nextInt();
System.out.println("请输入第二个整数 : ");
int b = s.nextInt();
System.out.println("由父类的f(int a,int b)方法计算的最大公约数:"+new Father().f(a,b));
System.out.println("由子类重写的f(int a,int b)方法计算的最小公倍数:"+new Son().f(a, b));
}
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值