关于java:我如何从我拥有的对象中获取变量?

How do i get variable from the objects that i have?

本问题已经有最佳答案,请猛点这里访问。

如何从代码中获取每个对象的每个地址。代码似乎是正确的。但它两次都只返回2号房间的地址。它没有返回第一个地址。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
    public class House {

    private static String address;

    House ( String addr ) {

        address = addr;

    }

    public static String returnAddress () {
        return address;
    }

    public static void main (String [] args) {

        House house1 = new House("house 1 address");
        House house2 = new House("house 2 address");


        System.out.println( house1.returnAddress());
        System.out.println( house2.returnAddress());

    }
}


删除静态关键字。静态变量是全局变量,这意味着它在该类的所有实例之间共享,而不是特定于每个实例本身的非静态变量。当你建立第一个房子时,你将地址设置为第一个字符串("房子1地址"),这是所有房子共享的,当你实例化第二个字符串时,你将地址设置为第二个字符串("房子2地址")。相应地,从returnAddress()中删除static关键字。