Java编译错误“;类MpsPojo中的方法setSchema不能应用于给定类型&引用;
嗨,我看到了一些与此相关的问题,但没有找到任何切中要害的解决方案 我将POJO类定义为: MpsPojo.java 我的第二个业务逻辑是::MpsLogic.javaJava编译错误“;类MpsPojo中的方法setSchema不能应用于给定类型&引用;,java,Java,嗨,我看到了一些与此相关的问题,但没有找到任何切中要害的解决方案 我将POJO类定义为: MpsPojo.java 我的第二个业务逻辑是::MpsLogic.java public class MpsLogic { public void calculateAssert(MpsPojo mpspojo){ String manufacturer; String product; String schema; manu
public class MpsLogic {
public void calculateAssert(MpsPojo mpspojo){
String manufacturer;
String product;
String schema;
manufacturer = mpspojo.getMfr();
product = mpspojo.getProd();
schema = mpspojo.getSchema();
String url = "http://localhost:9120/dashboards/all/list/"+manufacturer+"/"+product+"/"+schema;
}
}
public class FinalLogic {
MpsPojo mpspojon = new MpsPojo();
MpsLogic mpslogicn = new MpsLogic();
@Test
public void firstTest() {
mpspojon.setMfr("m1");
mpspojon.setProd("p1");
mpspojon.setSchema("sch1");
mpslogicn.calculateAssert(mpspojon);
System.out.println("Printing from Final class");
}
最后一个类,测试类是::FinalLogic.java
public class MpsLogic {
public void calculateAssert(MpsPojo mpspojo){
String manufacturer;
String product;
String schema;
manufacturer = mpspojo.getMfr();
product = mpspojo.getProd();
schema = mpspojo.getSchema();
String url = "http://localhost:9120/dashboards/all/list/"+manufacturer+"/"+product+"/"+schema;
}
}
public class FinalLogic {
MpsPojo mpspojon = new MpsPojo();
MpsLogic mpslogicn = new MpsLogic();
@Test
public void firstTest() {
mpspojon.setMfr("m1");
mpspojon.setProd("p1");
mpspojon.setSchema("sch1");
mpslogicn.calculateAssert(mpspojon);
System.out.println("Printing from Final class");
}
}
在程序FinalLogic.java中,这给了我编译错误error类MpsPojo中的方法setSchema不能应用于给定类型代码>
但是当我注释行mpspojon.setProd(“p1”)代码>和mpspojon.setSchema(“sch1”)代码>那么这可以正常工作,没有错误
我做了很多调试,但没有找到任何线索。任何帮助都会对我很有帮助
谢谢setSchema()
在您的声明中没有收到任何参数。将其更改为:
public void setSchema(String sche) {
this.sche = sche;
}
对于setProd
如果您使用任何IDE,我建议您:
查看您将得到的警告(赋值this.sche=sche
将发出警告在没有参数方法的情况下,对变量thing的赋值不起作用
)
自动生成setter/getter,不要自己编写它们(从而避免任何可能的键入错误)。例如,在Eclipse中,将是alt
+shift
+s
,然后是r
将String
参数添加到setProd
和setchema
中,就像您使用setMfr
所做的那样:
public void setProd(String prod) {
^ ^
及
谢谢。。我用的是Pojo班上其他的一些。。所以我没注意到。非常感谢。。这就解决了问题。。不幸的是,我使用的是vim编辑器,所以dint注意到了。再次感谢。@JK_-Jha然而,你还是在编译。我认为Eclipse只是将标准jdk警告可视化。