我是java初学者,写了段小程序,构造方法取年龄值,取得的结果却是0 , 不知道是为什么,
请前辈指教,代码如下:package aa;public class aa
{
   public static void main(String[] ages)
   {     
      bb age1 = new bb();
      int age = age1.getAge();
      
      //显示年龄
      System.out.println(age);
     
   }}class bb
{
public bb()
{
String name = "funan";
int age = 25;
}

//方法1: 取名字
public String getName()
{
return(name);
}
//方法2: 取年龄
public int getAge(){
return(age);
}

//字段
private String name;
private int age;


}
------
运算结果是:0 , 不正确,错哪里了??

解决方案 »

  1.   

    public bb()
    {
    String name = "funan";
    int age = 25; //问题在这里,你声明了一个局部变量,改成age=25;就可以了
    }
      

  2.   

    public bb()
    {
    String name = "funan";   //设定的为局部变量的值
    int age = 25; //设定的为局部变量的值,只在构造函数有效 }
    private String name;  默认为null
    private int age; 默认为0public int getAge(){
    return(age);  返回的为private int age;
    }
      

  3.   

    public bb()
    {
     name = "funan";   
     age = 25;}
    这样就ok!!