小白求問getter和setter問題
package com.imooc;
public class Demo1 {
? ?private int num1;
public int getNum1(){
return num1;
}
public void setNum1(int newNum1){
num1=newNum1;
}
以上是對的程序,通過下面程序調(diào)用
package com.imooc;
public class Demo2 {
?
public static void main(String[] args) {
Demo1 hello3=new Demo1();
hello3.setNum1(55);
System.out.println(hello3.getNum1());
} ? ?
}
再看下面
public int setNum1(int newNum1){
num1=newNum1;
return num1;
}
這種寫法沒提示出錯,但是調(diào)用不了是為什么,下面是上面的調(diào)用程序
package com.imooc;
public class Demo2 {
?
public static void main(String[] args) {
Demo1 hello3=new Demo1();
hello3.setNum1(55);
System.out.println(hello3.setNum1());
} ? ?
}在System.out.println(hello3.setNum1());的setNum1()下面出錯了,是怎么回事
2017-05-14
hello3.setNum1(55);這個方法是有返回值的,因此你必須將它附給一個新值,
比如 int a =hello3.setNum1(55); ? System.out.println(a); 這樣修改是正確的;
或者直接System.out.println(hello3.setNum1(55));不需要前面的那句賦值的語句
2017-05-10
沒有賦值啊