变量的初始化顺序

java中子类和父类有很多变量,那么你知道它们的初始化顺序是什么样的吗?

对于同一个类中变量的初始化顺序是:先静态变量后对象变量最后构造器

对于有父类的类中变量初始化顺序是:先父类静态变量,再子类静态变量,再父类对象变量、父类构造器最后是子类对象变量子类构造器。


类变量:即时静态变量,static修饰。                               

对象变量:即是普通常见的变量,非static修饰,在创建对象时才会初始化对象变量。


这个很好理解,对于类变量(静态变量,static修饰),这个是在类加载过程中初始化的(参考上一篇文章,类加载过程--最后一部分内容),会先初始化父类类变量,在初始化子类类变量,这个是类加载的过程,只有类加载了我们才能创建对象,所以类变量的初始化在对象变量之前,且父类在前,子类在后。对于对象变量构造器,记得一句话:先父后子,先对象变量后构造器。


阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

变量的初始化顺序

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭