为什么以及如何初始化实例变量而不用Java中的构造函数初始化?

时间:2016-03-23 21:21:10

标签: java object instance-variables

p1 = '(1,4)'
x1, y1 = p1[1:-1].split(',')
x1 = int(x1)

输出= 0

P.S :我在Java中天真,所以这个问题可能非常愚蠢。我期待着你的支持。感谢

2 个答案:

答案 0 :(得分:1)

未初始化的静态/实例字段将由编译器设置为默认值。

下表显示数据类型的默认值:

+--------------------------+----------------------------+
|        Data Type         | Default Value (for fields) |
+--------------------------+----------------------------+
| byte                     | 0                          |
| short                    | 0                          |
| int                      | 0                          |
| long                     | 0L                         |
| float                    | 0.0f                       |
| double                   | 0.0d                       |
| char                     | '\u0000'                   |
| String (or any object)   | null                       |
| boolean                  | false                      |
+--------------------------+----------------------------+

有关详细信息,请参阅文档here

答案 1 :(得分:1)

请参阅由default value

初始化的Instance-Variable or Class-Variable
  

如果instance-variable是某个Reference类型,那么它将是   始终按null

分配默认值

因此,在您的情况下,int是原始类型,其default值为0(zero),这就是您在输出中获得0的原因。< / p>