在Java中,成员变量和局部变量分别是什么时候初始化,哪个顺序在前?跪求各位前辈指点
9个回答
展开全部
成员变量相当于你的名字,出生就有,如果你父母来不及取,默认是宝宝。局部变量相当于你在公司或者学校的外号,进公司或学校才有,出了公司和学校就没了,而如果没有人给你取外号,那么你就没有外号,没有默认值。
成员变量在类存在的时候就已经初始化了,局部变量只有该方法被调用的时候才初始化。局部变量一定要赋初值,否则报错,成员变量如果不赋初值,系统默认给。
成员变量在类存在的时候就已经初始化了,局部变量只有该方法被调用的时候才初始化。局部变量一定要赋初值,否则报错,成员变量如果不赋初值,系统默认给。
更多追问追答
追问
如果在一个类中不用默认的构造方法,重新写一个构造方法,如果成员变量刚开始只声明不赋值的话,直接输出这个成员变量的值会是什么?假设前提是输出语句在构造方法前面, 是输出构造方法里面的值还是翻译会报错
追答
类型 占字节数 默认值(不与构造函数相关,与类型有关) byte 1 0
char 2 '\u0000'(null)
int 4 0
float 4 0
double 8 0
boolean 1 false
如果那个输出语句先输出(前提那个输出语句没有问题的话),然后是构造函数
{System.out.println("...");}//输出结果...然后是4564,跟构造函数位置顺序无关 TT(){System.out.println("4564");}
展开全部
成员变量是这个类的变量,局部变量可以在具体的方法里定义,同时在这个方法里可以调用成员变量,因此谁先调用就先初始化哪个。当然你也可以在定义变量的时候就初始化,所以总的来说,顺序一切都有可能,但要调用就必须初始化!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
成员变量是JVM自动载入初始化的,而局部变量需要显示初始化也就是需要先实例化对象后才会初始化,并要求手动赋予初始值,因此成员变量先初始化
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
成员变量在类实例化的时候创建并初始化。局部变量在执行的时候才被创建。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
成员变量在new这个类的时候初始化,局部变量是调用他所在的方法的时候初始化
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询