java编写一个类该类有如下方法: public int f(int a,int b),返回a和b的最大公约数,再编写一个该类的子类,要求子类重写方法f(),而且重写的方法将返回两个整数的最小公倍数要求:在重写的方法的方法体中首先调用被隐藏的方法返回a和b的最大公约数m,然后将(a*b)/m返回;在应用的程序的主类中分别使用父类和子类创建对象,并分别调用方法f()计算两个正整数的最大公约数和最小公倍数。
时间: 2023-07-15 08:15:44 浏览: 102
java代码-编写求最大公约数和最小公倍数的程序
以下是实现要求的代码:
```java
public class GCD {
public int f(int a, int b) {
if (b == 0) {
return a;
} else {
return f(b, a % b);
}
}
}
public class LCM extends GCD {
@Override
public int f(int a, int b) {
int gcd = super.f(a, b);
return (a * b) / gcd;
}
}
public class Main {
public static void main(String[] args) {
// 使用父类
GCD gcd = new GCD();
int a = 12, b = 18;
System.out.println("最大公约数:" + gcd.f(a, b));
// 使用子类
LCM lcm = new LCM();
System.out.println("最小公倍数:" + lcm.f(a, b));
}
}
```
输出结果:
```
最大公约数:6
最小公倍数:36
```
阅读全文