JAVA中的变量为什么要初始化呢?
发布网友
发布时间:2022-04-26 19:13
我来回答
共8个回答
热心网友
时间:2023-01-20 22:28
为了给变量分配空间。不分配空间无法对变量操作。
在java中全局变量不需要初始化,局部变量必须初始化。
热心网友
时间:2023-01-20 23:46
变量初始化主要是体现了java的安全和健壮性,打个比方,如果你把人看作一个类,则,张三就是人的一个实例化对象,人有胳膊有腿,你对变量初始化就相当于给这个叫张三的人加上胳膊和腿,而如果你不对变量初始化,那这个人(张三)就不是一个完整的人,而为了这种情况的出现,java对于类的成员还有一个默认的强制初始化,这个初始化在构造器之前,就是为了保证即使你没有手动对其进行赋值,也能保证张三有胳膊有腿。
热心网友
时间:2023-01-21 01:20
在java中,定义的变量需要被初始化,否则就无法被调用。
比如:
String str ;
这里定义了一个String的引用,或者说是指针,指向一块内存空间。可是,此时内存中并没有真的开辟一块空间来存放str,而是相当于一把钥匙,指向了这块空间,随时准备开辟。
如果:
str = "HelloWorld!"; //变量初始化
那么,内存中就是真的有空间被开辟了,如此一来,才可以调用这个变量,因为它确实存在了。
热心网友
时间:2023-01-21 03:12
就像你所说的 提高了安全性
c就不会自动初始化 所以在未初始化的情况下 操作会得到意想不到的结果
比如指针变量没有初始化 那它里面的值是任意的 也就是它指向的地址是任意的
这样子 有可能访问到系统的内存 这时再进行操作 系统也就挂了
都初始化为0,起码不会出太大问题吧,最多就是结果不对
热心网友
时间:2023-01-21 05:20
不初始化,这个值就是null,会报空指针异常
热心网友
时间:2023-01-21 07:44
自问自答嘛?
热心网友
时间:2023-01-21 10:26
都知道了 还问什么呢....
热心网友
时间:2023-01-21 13:24
这正是java的特点,极大的提高了代码安全性.你不是知道的么?
Java中所有变量在使用前都初始化吗
2、局部变量的初始化可以认为是分配初始空间,也就是在内存中要开辟一块区域来存这个东西,不初始化是没有内存空间的,也就不能使用。
java初始化是做什么的
在内存分配完成之后,java的虚拟机开始对新创建的对象执行初始化操作,因为 java规范要求在一个对象的引用可见之前需要对其进行初始化。在Java中,三种执行对象初始化的结构,分别是实例初始化器、实例变量初始化器以及构造函数。
类成员变量初始赋值有什么意义么?
像这样,在程序中实例化并输出会输出 a 为 0,因为默认值的问题,如果像这样 class test{ int a =1;} 因为有初始化所以输出为a 为1。总之当成员变量分配内存后,应该是有默认值的,顺序应该是:先 int a;int b;(这里应该都在分配内存时指定默认值为0了)然后 再执行初始化:a = b+1;b =...
java里面局部变量使用前必须初始化,能给详细讲讲嘛?
成员变量会被系统默认初始化,局部变量没这功能,所以必须自己初始化。还要注意静态成员变量也没系统默认初始化,必须在初始化块或者定义时或者构造函数里进行手动初始化
为什么Java中的局部变量必须要初始化?
Java中的变量分为类变量,成员变量和局部变量,分别位于JVM的方法区、堆内存和栈内存中。类变量和成员变量都可以在类首次加载和类初始化时,给出默认值,但是局部变量就必须要在使用前赋值。实际上,Java完全可以设计成局部变量不需要初始化,只要作者们高兴。事实上,就有这样的语言,比如C++。当然,C++...
java语言,什么是初始化啊?初始化和实例化一样吗?
java中不管对象也好,还是基本数据类型也好,你声明它的时候,它们都称为变量,在你使用变量前给变量进行赋值,这就是变量的初始值,因此叫变量初始化。实例化是指对象的创建,一般是指通过 new 关键字(当然还有其他途径,比如反射),在堆中为对象分配内存,这就是实例化。举个非常简单的例子,你知道...
Java中所有变量在使用前都初始化吗?
对 你就得这么记“所有对变量在使用前都得初始化”1.尤其是在方法中声明的局部变量,必须得由手动进行显示的初始化 2.而声明在类体中的成员变量,虚拟机会自动帮你初始化 为各种 0 值(数值类型为0 字符则为编码为0的那个 boolean 为false(编码还是0)引用型初始化为null)比较特殊的一种变量...
java中为什么要为类的属性初始化?
0f\x0d\x0a\x0d\x0adouble0.0d\x0d\x0a2.局部变量声明之后,Java虚拟机就不会自动给它初始化为默认值,因此局部变量的使用必须先经过显式的初始化。\x0d\x0a但是需要声明的是:对于只负责接收一个表达式的值的局部变量可以不初始化,参与运算和直接输出等其它情况的局部变量需要初始化。
Java 中final static变量为什么要初始化
修饰变量,因为static变量属于类而不属于对象,且在调用构造方法之前static 变量就已经被系统给赋默认值。而相应的final static 变量就只能在定义的时候就初始化,否则既无法在构造方法中初始化,系统又不会赋默认值,相当于这个变量被定义出来是毫无用处的。 因此java中final static变量必须初始化。
通俗解释什么叫初始化
原因是,在程序中,变量或对象被声明后,会保存在内存中,但是这块内存可能会包含未知的值或垃圾值,如果直接使用这个变量或对象,可能会导致程序崩溃或产生错误结果,因此需要先对其进行初始化。内容延伸是,不同的编程语言有不同的初始化方式,比如在C++中可以使用构造函数进行初始化,在Java中可以使用构造...