Topic: 各位看看是不是封装的问题

  Print this page

1.各位看看是不是封装的问题 Copy to clipboard
Posted by: chorgrobb
Posted on: 2005-04-07 12:45

import javax.swing.JOptionPane;
class test
{
private String name;//= "hallen";
private int age = 90;
private String address;


public String getName()
{
return name;
}
public void setName(String strName)
{
name= strName;
}
public int getAge()
{
return age;
}
public void setAge(int intAge)
{
age=intAge ;
}
public String getAddress()
{
return address;
}
public void setAddress(String strAddress)
{
address=strAddress ;
}

}
public class TestClass
{
public static void main(String []args)
{

/* System.out.println("the address "+ " "
+x.getAddress()+" "+'\n'
+"the name is"+" "+ x.getName()+" "+'\n'
+"the age is"+" "+ x.getAge());
*/
String userName;
String userAddress;
String userAge = "";

userName = JOptionPane.showInputDialog("please input the user's name");
userAddress = JOptionPane.showInputDialog("please input the user's address");
userAge = JOptionPane.showInputDialog("please input the user's age");
int m = Integer.parseInt(userAge);

test x = new test();
x.setName(userName);
x.setAge(0);
x.setAddress(userAddress);

String result = "the address is"+ " "+x.getAddress()+" "+'\n'
+"the name is"+" "+ x.getName()+" "+'\n'
*** +"the age is"+" "+ m;
JOptionPane.showMessageDialog(null,
result,"notcing",
JOptionPane.INFORMATION_MESSAGE) ;
System.exit(0);

}

}
我想问的是带***的那一行中的"m"为什么不能用x.setAge代替,而其他的如:x.getAddress,x.getName却可以,这是为什么?
请高手指教!!

2.Re:各位看看是不是封装的问题 [Re: chorgrobb] Copy to clipboard
Posted by: Sunteya
Posted on: 2005-04-07 13:44

可以用x.getAge()啊
如果出现0是因为你之前代码里是 x.setAge(0); 而不是 x.setAge(m);

3.Re:各位看看是不是封装的问题 [Re: chorgrobb] Copy to clipboard
Posted by: orangeyxj
Posted on: 2005-04-10 00:23

因为你的setAge()是 void,用getAge()就没问题了


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923