zoukankan      html  css  js  c++  java
  • 对构造方法的理解

    对象并不是通过构造方法构造的,只是通过构造方法来
    //以程序员自己的意愿进行赋值而已,真正创建对象的是通过new来创建对象的,
    //并且紧接着就会进行默认初始化与显式初始化,有继承父类的话,就是父类对象先被
    //创建出来,然后就初始化,再调用子类的构造方法,至于为什么父类对象实例化了后
    //没有直接掉父类的构造器,是因为new com.第一节.Drived();这里,只调用了子类的构造方法,其实
    //这里会被编译为两句话,一句是实例化对象,第二句是调用构造方法,所以需要通过
    //子类的构造方法来调用父类的构造方法
    //重点:其实jvm调用的构造方法是把类中的变量赋值操作与实例代码块合并成了一个称作<init>的构造方法
    //所以再执行构造方法的时候才会进行显式初始化,而默认初始化是在第一句分配内存时进行的

    // public Test();
    // 0 aload_0 [this]!注意,这里JVM调用的构造方法(也就是上文的<init>方法)第一句其实是把当前对象引用压栈
    //那么这就说明对象已经分配了内存并进行了默认初始化
    // 1 invokespecial java.lang.Object() [14]
    // 4 aload_0 [this]
    // 5 bipush 9
    // 7 putfield deam.Test.b : int [16]
    // 10 aload_0 [this]
  • 相关阅读:
    java.util中的Stack,Queue,Iterable;泛型
    java.util中的Collection,Map;
    java.lang中的异常类2020.12.18
    java.util包,Date,Calender,Random,Collection.202012.19/20号补写
    vue框架搭建流程
    Django model中的class Meta详解
    Python重要配置大全
    Python进程与线程
    Pandas模块
    程序语言官方网址大全
  • 原文地址:https://www.cnblogs.com/lollong/p/10659854.html
Copyright © 2011-2022 走看看