继承时的构造函数的的原则
2016-04-20 16:02
162 查看
在日常开发中,我们一般都会存在class的继承,那对于继承,子类父类的构造顺序是什么样的那?自己总结了下,虽然很基础,还是记录下,作为以后的复习只用。
继承时的构造原则:
1、如果子类没有定义构造函数,那子类就是调用父类的无参数的构造函数。
2、如果子类定义了构造函数,那么不管父类有没有定义构造函数,在创建子类对象时,首先会调用父类的无参数的构造函数,然后在调用子类自己的构造函数。
3、在创建一个子类对象时,如果子类没有显示调用父类的构造函数,那么就会首先调用父类的默认的无参的构造函数(其实和上面的2是一样的)。
4、在创建子类对象时,如果此时父类有自己书写了无参的构造函数,此时如果子类没有显示的调用父类的构造函数,那就就会首先调用父类自己书写的的无参的构造函数。
5、在创建子类对象时,如果父类只有有参的构造函数,子类没有显示的调用的父类的构造函数,则会出错。因为如果父类只有有参的构造函数,那么子类就必须显示调用父类有参的构造函数,
6、如果子类显示调用父类的有参构造函数,那么必须使用初始化列表形式进行初始化。
继承时的构造原则:
1、如果子类没有定义构造函数,那子类就是调用父类的无参数的构造函数。
2、如果子类定义了构造函数,那么不管父类有没有定义构造函数,在创建子类对象时,首先会调用父类的无参数的构造函数,然后在调用子类自己的构造函数。
3、在创建一个子类对象时,如果子类没有显示调用父类的构造函数,那么就会首先调用父类的默认的无参的构造函数(其实和上面的2是一样的)。
4、在创建子类对象时,如果此时父类有自己书写了无参的构造函数,此时如果子类没有显示的调用父类的构造函数,那就就会首先调用父类自己书写的的无参的构造函数。
5、在创建子类对象时,如果父类只有有参的构造函数,子类没有显示的调用的父类的构造函数,则会出错。因为如果父类只有有参的构造函数,那么子类就必须显示调用父类有参的构造函数,
6、如果子类显示调用父类的有参构造函数,那么必须使用初始化列表形式进行初始化。
相关文章推荐
- AJAX跨域请求PHP接口
- java内存布局图
- iOS 将原点移动到navigationBar下面(或UIScrollView和 cell加载子视图偏移64问题)
- js监听输入框值的即时变化onpropertychange、oninput
- 详解Python命令行解析工具Argparse
- RMAN异机恢复
- Android 常用布局及基本UI控件
- ActiveMQ实战之 Topic发布订阅消息
- JNI - Exception Handling
- Android插件化基础
- Android之"AES"加密解密
- 漏洞原理分析
- 腾讯后台研发暑期实习offer经历
- [Asp.net Mvc]通过UrlHelper扩展实现js,css修改后重新加载
- 帧布局,表格布局
- iOS应用程序内打开指定qq聊天、给某人打电话
- java中redis实现篇
- 简明的C++函数指针学习教程
- 浅析JS动态创建元素【两种方法】
- JSExecutionException: ReferenceError: Can't find variable: __fbBatchedBridge