一道JAVA题 求详细解答
编写一个类,该类有一个方法publicintf(inta,intb),该方法返回a和b的最大公约数.然后再编写一个该类的子类,要求子类重写方法f,而且重写的方法将返回a和...
编写一个类,该类有一个方法public int f(int a,int b),该方法返回a和b的最大公约数.然后再编写一个该类的子类,要求子类重写方法f,而且重写的方法将返回a和b的最小公倍数.要求在重写的方法的方法体中首先调用被隐藏的方法返回a和b的最大公约数m,然后将乘积(a*b)/m返回.要求在应用程序的主类中分别使用父类和子类创建对象,并分别调用方法计算两个正整数的最大公约数和最小公倍数
小弟菜鸟一个 求大大详解 展开
小弟菜鸟一个 求大大详解 展开
4个回答
展开全部
求最大公约数的类你能搞定吧,就不多说了。
假设求最大公约数的类名是A,最小公倍数的类名是B:
class B extends A
{
public int f(int a,int b)
{
int m = super.f(a,b); // 最大公约数
return a*b/m;
}
}
假设求最大公约数的类名是A,最小公倍数的类名是B:
class B extends A
{
public int f(int a,int b)
{
int m = super.f(a,b); // 最大公约数
return a*b/m;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼主在吗,如果在的话我现在给你写
追问
在啊......
追答
那你==,我给你写
package org.lunarframework.baidu.zhidao.java;
public class A {
public int f(int a, int b) {
if (a >= b) {
return fr(a, b);
} else {
return fr(b, a);
}
}
private int fr(int a, int b) {
if (b == 0) {
return a;
} else {
return fr(b, a % b);
}
}
public static void main(String args[]) {
A a = new A();
System.out.println(a.f(12, 4));
}
}
package org.lunarframework.baidu.zhidao.java;
public class B extends A {
@Override
public int f(int a, int b) {
return a * b / super.f(a, b);
}
public static void main(String args[]) {
B b = new B();
System.out.println(b.f(3, 4));
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在子类重写的方法中调用写
int m=super.f(a,b);
return a*b/m
int m=super.f(a,b);
return a*b/m
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼主在的话我现在就写详细代码给你
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |