构造函数---this(2)
来源:互联网 发布:zip解压缩软件官方 编辑:程序博客网 时间:2024/06/04 11:37
上次我们说到了this关键字现在我们继续说我们的this的用法
构造函数调用构造函数
如果为一个类谢了很多个构造函数,我们经常需要在一个构造函数中调用另一个构造函数,那么我们为不让代码出现冗余,我们可以通过this这个关键字来实现。
this关键字的意识就是说“当前对象”的意思。在一个构造函数中,为其赋予一个自变量的列表,那么this关键字会具有不同的含义:它会对与那个自变量列表相符的构建器进行明确的调用
public class Flower { private int petalCount = 0; private String s = new String(); Flower(int petals){ petalCount = petals; System.out.println("构造函数 w/ int参数,petalCount =" + petalCount); } Flower(String ss){ System.out.println("构造函数 w/ String参数,s="+ss); s = ss; } Flower(String s,int petals){ this(petals);//this(s);不能调用两次 this.s = s; //this的另一个用法 System.out.println("String&int args"); } Flower(){ this("hi",47); System.out.println("默认的构造函数(没有参数)"); } void print(){ //不是在构造函数中 System.out.println("petalCount="+petalCount+"\ts="+s); } public static void main(String[] args){ Flower x =new Flower(); x.print(); }}
在Flower(String s,int petals)这个构造函数中像我们说明了一个问题this关键字是可以调用构造函数但是不可调用两次,还有就是够赞函数调用的必须是我们我们第一次执行 的对象,不然编译器会报错。
同时这个例子也向我们展示了this关键字的另一个用途,我们定义了很多s这个变量,这么多的变量名相同我们在调用的时候很容易混淆,而我们可以通过this.s来引用数据,这样我们就可以清晰的使用变量了
而最后我们在print()中发现编译器不让我们再构造函数之外的任意一方法内部调用一个构造函数。
阅读全文
0 0
- 构造函数---this(2)
- scala 随笔(2) scala构造函数 this
- C++ this指针和构造函数(-)
- 5.3面向对象(构造函数,this)
- 构造函数,this关键字
- 构造函数,super,this
- 构造函数和This
- 构造函数和this
- 构造函数与this
- 构造函数 this关键字
- this指针 构造函数
- 构造函数与this
- 黑马程序员------面向对象(No.2)(封装、构造函数、构造代码块、this)
- JAVA面向对象知识点总结(2)—封装、构造函数、构造代码块、this关键字
- (19)构造函数、构造代码块、this用法
- super() this() super this 与构造函数
- 【构造函数】----构造函数调用构造函数,使用this
- 构造函数中的this指针
- VS2013下串口数据char型转COleVariant问题
- [笔试]大端、小端
- 基于springMVC文件上传的例子。ajax提交表单,子窗口关闭刷新父界面的demo
- 构造函数初识上篇---this
- sed指令修改arm-Linux系统的开发板网络配置文件 eth0-setting。
- 构造函数---this(2)
- 构造函数之初始化操作(1)
- 51nod:1130 N的阶乘的长度 V2(斯特林近似)(数学公式)
- 有序链表合并的递归写法
- java面向对象的三大基本特征之封装,继承,多态
- java学习干货之接口与实现
- OC学习之路(2)
- java中我们如何制作我们自己的API帮助文档
- oracle之创建空间和用户