私はCloudsimに取り組んでいます.私は自分の仕事のためにPowerVmAllocationPolicyAbstractクラスのfindHostForVm()メソッドを変更したいです.私はfindHostForVm()を次で表現される抽象メソッドに変更します.
public abstract class PowerVmAllocationPolicyAbstract extends VmAllocationPolicy {
public PowerVmAllocationPolicyAbstract(List<? extends Host> list) {
super(list);
}
public abstract PowerHost findHostForVm(Vm vm) ;
.
.
}
そして、私自身のクラスで findHostForVm(Vm vm) を書きました。 powerDatacenter からインスタンスを作成するとき、1 つのパラメーターは PowerVmAllocationPolicyAbstract を参照する必要があります。
public class D{
public PowerHost findHostForVm(List<Vm> vmlist) {
.
.
}
powerDatacenter = new PowerDatacenter(
name,
characteristics,
new D(),
new LinkedList<Storage>(),
5.0);
}
しかし、エラーがあります。このエラーは次のとおりです。
constructor PowerDatacenter in class org.cloudbus.cloudsim.power.PowerDatacenter cannot be applied to given types;
required: java.lang.String,org.cloudbus.cloudsim.DatacenterCharacteristics,org.cloudbus.cloudsim.VmAl locationPolicy,java.util.List<org.cloudbus.cloudsim.Storage>,double
found: java.lang.String,org.cloudbus.cloudsim.DatacenterCharacteristics,cs.umu.se.vmp.alg. D,java.util.LinkedList<org.cloudbus.cloudsim.Storage>,double
reason: actual argument cs.umu.se.vmp.alg. D cannot be converted to org.cloudbus.cloudsim.VmAllocationPolicy by method invocation conversion
私を助けてください私は何をすべきですか?どうもありがとう