java局部变量和全局变量赋值

为什么i没有赋值,确可以用呢?求大神解决... 为什么 i 没有赋值,确可以用呢?求大神解决 展开
 我来答
没伞就学会奔跑
2014-01-12 · 超过10用户采纳过TA的回答
知道答主
回答量:79
采纳率:0%
帮助的人:31.2万
展开全部
i 是一个静态成员变量,标准来说,java没有全局变量这个说法,成员变量的一个特点就是类加载的时候,如果没有初始化值就会给它赋值,基本数据类型的初始化值都是固定的,
一个变量作为类成员使用的时候,如果没有被初始化,java会为其分配默认值:
Boolean false
Char '\u0000'(null)
byte (byte)0
short (short)0
int 0
long 0L
float 0.0f
double 0.0d 等。。。。。。。。。
百度网友2acf15a
2014-01-12 · TA获得超过1534个赞
知道小有建树答主
回答量:1123
采纳率:81%
帮助的人:272万
展开全部
无论创建多少对象,static数据都只只用一份存储区域。static关键字不能应用于局部变量,因此他只能这用于域。如果一个域是基本类型,并且没有给它初始化,那么他会默认为基本类型的标准初始值,像int类型默认是0;如果是一个引用,那么他会默认为初始值null。
请采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zk329754551
推荐于2016-03-23 · TA获得超过251个赞
知道小有建树答主
回答量:216
采纳率:0%
帮助的人:117万
展开全部
i作为类的成员,初始化类时会对未赋值的变量赋默认值的
int 为 0
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f653d2899
2014-01-12
知道答主
回答量:27
采纳率:0%
帮助的人:11.5万
展开全部
肯定初始化了,对于不同类型的初始化的初值是不同的,假如int型,则是0.
否则会报空指针错误。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-01-12
展开全部
静态的整形如果没有初始化,则默认是0,如果不是静态就会报错了
追问


这样写他也不会报错呀

追答
你这还是个全局变量,一样会自动初始化的,方法内的局部变量就会出错了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式