这里我试图改变“stat”的状态
public class controller {
public static void main(String args[]){{
final AjaxR re = new AjaxR();
re.setMal("qw");
if (re.getMal() != null) {
re.setStat(true);
}
if(re.isStat()){
System.out.println("Hello");
}
}
public class AjaxR {
boolean stat;
String mal;
public boolean isStat() {
return stat;
}
public void setStat(final boolean stat) {
this.stat = stat;
}
public String getmal() {
return mal;
}
public void setMal(final String mal) {
this.mal = mal;
}
此处re.stat
未设置为true。除非我在调试模式下手动强制执行re.setStat(true)
,否则它不会改变。
答案 0 :(得分:1)
您的代码存在多个语法问题:
getMal()
; getmal()
是错误的情况,它与AjaxR
中的方法controller
不匹配; AjaxR
课程没有右括号; stat
也没有右括号。然而,当这些错误得到修复时(我将把它作为练习让你完成!),你的代码就像你期望的那样 - "你好"打印,create procedure testProc (p_param1 in number, p_param2 in number) is
begin
dbms_output.put_line('params: ' || p_param1 || ' ' || p_param2);
end;
肯定设置为true。
答案 1 :(得分:0)
我将您的代码复制到eclipse中,并且能够轻松找到其余的错误。您没有正确数量的开始和结束括号,另外您将方法getmal()
命名为getMal()
而不是Hello
。如果您使用正确的IDE,则可以轻松检测到所有这些拼写错误和错误。
插入正确数量的大括号并修复所有拼写错误后,以下代码可以正常工作并打印出public class controller {
public static void main(String args[]){
final AjaxR re = new AjaxR();
re.setMal("qw");
if (re.getMal() != null) {
re.setStat(true);
}
if(re.isStat()){
System.out.println("Hello");
}
}
}
public class AjaxR {
boolean stat;
String mal;
public boolean isStat() {
return stat;
}
public void setStat(final boolean stat) {
this.stat = stat;
}
public String getMal() {
return mal;
}
public void setMal(final String mal) {
this.mal = mal;
}
}
:
{