博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
构造型模式
阅读量:2394 次
发布时间:2019-05-10

本文共 682 字,大约阅读时间需要 2 分钟。

Java的构造器并不是函数,所以不能被继承,构造器的修饰符比较有限,只有 public private protected,其它任何修饰符都不能对其使用,就是说构造器不能被命名为抽象、同步、静态等等访问限制以外的形式
注:构造器不是函数,因此没有返回值,也不允许有返回值,但是构造器允许存在return语句中,但是return什么都不返回,如果指定返回值,虽然编译器不会报出任何错误,但是JVM会认为它是一个与构造器同名的函数,这样就会出现一些莫名其妙的无法找到构造器的错误
Java构造实例时的顺序
1> 分配对象空间,并将对象中成员初始化为0或者空,java不允许用户操作一个不定值对象
2> 执行属性值的显示初始化
3> 执行构造器
4> 将变量关联到堆中的对象上
this() super() 是如果想传入当前构造器中的参数或者构造器中的数据调用其他构造器或者控制父类构造器时使用,在一个构造器中只能使用this()或者super()之中的一个,而且调用的位置只能在构造器的第一行,在子类中如果你希望调用弗雷德构造器来初始化父类的部分,那就用合适的参数来调用super(),如果你没有参数的super()来调用父类的构造器,父类缺省的构造器会被调用,如果父类没有缺省的构造器,那编译器就会报错
注:经常在继承父类的时候构造器中并不写和父类有关的内容,此时如果父类没有缺省构造器,就会出现编译器添加的缺省构造器带来问题,如:Class b extends a { public b() {} } 就没有任何关于父类构造器的信息,此时父类缺省的构造器就会被调用

转载地址:http://jigab.baihongyu.com/

你可能感兴趣的文章
使用 Apache MINA 开发高性能网络应用程序
查看>>
五分钟学会使用spring-data-cassandra快速实现数据的访问
查看>>
Build self-healing distributed systems with Spring Cloud
查看>>
如何利用Spring Cloud构建起自我修复型分布式系统
查看>>
Java代码实现设置系统时间
查看>>
java -D参数简化加入多个jar
查看>>
用Erlang开发的文档数据库系统CouchDB
查看>>
Apache Commons工具集简介
查看>>
Apache Cayenne—辣椒你吃了吗?
查看>>
云应用开发工具:Spring Cloud 1.0 正式发布
查看>>
[转]在VC中使用智能指针操作Excel
查看>>
关于Linux命令行环境下无线网卡的配置
查看>>
C++的朋友,你都在用什么连数据库啊
查看>>
Setup Kubernetes on a Raspberry Pi Cluster easily the official way!
查看>>
Installing Kubernetes on Linux with kubeadm
查看>>
k8s-Building Large Clusters
查看>>
[转]stl 通用排序算法解析
查看>>
分布式存储系统GlusterFS初体验
查看>>
GlusterFS常用命令小结
查看>>
GlusterFS分布式文件系统使用简介
查看>>