到目前为止我已经做到了,但是 b 部分有困难。这是一份模拟试卷,对 b 部分的其余部分不确定。
问)
总结 s.valAtIndex(i)
给出的序列的元素。
s 是 Seq 类型。
Seq 是一个接口(interface),它有一个方法valAtIndex(整数参数和 double 结果)
。
(a) 编写接口(interface)Seq。
(b) 编写一个类 Geometric,实现 Seq。使得每个实例 s 代表一个几何级数如下
s.valAtIndex(0), s.valAtIndex(0)
...
这样第 i 个元素 s.valAtIndex(i)
等于基数 b 的第 i 次方,即 b^i。 (回想一下 b^0=1)
(一)
public interface Seq{
public double valAtIndex(int i);
}
(二)
public Geometric implements Seq{
Seq s;
private double b;
public Geometric(double a){
s = new Geometric(a);
this.b=a;
}
@Override
public double valAtIndex(int i){
return 0;//not sure how to do this method
}
最佳答案
你的意思是这样的:
@Override
public double valAtIndex(int i) {
return Math.pow(b, i);
}
?
编辑:另外,如其他答案中所述,删除 Seq s;
以及构造函数中有关它的行。你最后应该有的是:
public class Geometric implements Seq {
private double b;
public Geometric(double a) {
this.b=a;
}
@Override
public double valAtIndex(int i){
return Math.pow(b, i);
}
}
关于Java - 实现另一个类并修改方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11891893/