关键字new和构造器关系
来源:互联网 发布:c语言substring 编辑:程序博客网 时间:2024/05/18 03:29
new是在创建一个新对象时,必定会用到的关键字,当用new创建一个对象时,jvm会为该对象分配一个内存空间,然后在为该对象的域赋初值,这样就算new了一个新对象了,然后就是执行new后面的代码,我理解为调用该类的某一个构造器(大家都知道构造器是可以重载的),然后就由构造器进行初始化该对象了,当该类存在基类时,先初始化该类的基类(当基类存在基类时先初始化基类的基类,以此类推),为什么jvm会知道先初始化基类?这是因为在子类的构造器中如果没有显示的在第一行代码中调用基类的构造器,就会隐式的调用基类的无参构造器(如果基类没有无参构造器,子类构造器中又没有显示调用基类的构造器就会报错),然后如果基类存在实例化的组合也要进行初始化,基类初始化完成之后,再初始化自身的实例化组合如果有的话,再执行子类构造器中代码;
类的初始化执行顺序:
一、静态代码块;
二、基类;
三、实例化的组合;
四、代码块;
五、自身构造器;
阅读全文
0 0
- 关键字new和构造器关系
- 构造器和new关键字
- 用构造方法构建对象时使用new关键字和不使用new关键字的差别
- 构造器和this关键字
- final关键字、类之间的关系、转型、多态的缺陷、构造器和多态
- new关键字和delete关键字
- new和override关键字
- NDK-CPP语言-构造函数+New和Delete和Static关键字+对象大小
- 构造器、重载和this关键字
- this、构造器、new
- C# new关键字和override
- newInstance()方法和new关键字
- newInstance()方法和new关键字
- C++-关键字new和delete
- 黑马程序员--面向对象之一:面向对象概念、类和对象的关系、封装、构造函数、this关键字、static关键字
- new、malloc和alloctor关系
- 6.2只继承于原型和构造器new F()
- 构造函数和const关键字
- RecyclerView使用ItemTouchHelper
- Python的“切片”:什么是切片?切片有什么作用?哪些地方会用到切片?
- 基于Django实现RBAC权限管理
- Mysql之组合索引
- 交叉熵代价函数
- 关键字new和构造器关系
- 关于group by 两个或以上条件的分析
- offer42--左旋转n个字符
- 【redis内部结构】skiplist
- Java设计模式之观察者模式
- CUSTOM_CONFIG_MAX_DRAM_SIZE的大小换算
- (一) Spring基础概述
- kotlin学习笔记——重载操作符
- Debian(树莓派)下搭建LNMP