Java 构造器调用构造器之“找不到符号”
来源:互联网 发布:杭州城市数据大脑 编辑:程序博客网 时间:2024/06/06 02:45
问题
在使用构造器调用构造器的简单练习中,使用this.(类名)(参数)的方法调用其他的构造器时报“找不到符号”的错误
具体描述
代码中使用平时的方法,通过this.Test09(name,addredd)调用另一个构造器完成类的对象的创建。
public class Test09 { String name; String address; int telephone; public Test09(String name,String address,int telephone){ this.Test09(name,address);//找不到符号 this.telephone = telephone; } public Test09(String name,String address){ this.name = name; this.address = address; } @Override public String toString(){ return name+"\t"+address+"\t"+telephone; } public static void main(String args[]) { Test09 test = new Test09("apple","zhongguo",12345); System.out.println(test); }}
解决
在构造器内部,如果要调用本类的其他构造器时只能使用:this(参数);
的方式调用,其他的方式均为错误写法。
思考 ##
使用this.Test09(参数)
的方式调用其他的构造器,在形式上来说这是一种对类中普通方法的调用,即属于正常的方法调用,要实现正常的方法调用则必须对象的引用存在或者说对象创建完成,但是构造器的目的就是创建类的对象,在构造器中使用this.Test09(参数)
的方式调用,编译器发现对象并没有创建完成,则报“找不到符号”的错误。
构造器调用构造器的注意事项
1.在一个构造器中只能调用一个其他的构造器,不能调用两个,否则会报错。
2.在调用的过程中必须将构造器调用置于最起始位置,否则会报错
3.除构造器外,编译器禁止在其他任何方法中调用构造器(new一个对象形式上并不是构造器调用,此处的调用指this(参数)
的形式的调用)
0 0
- Java 构造器调用构造器之“找不到符号”
- Java基础之构造器调用顺序
- java 构造器中调用构造器
- java的构造器调用
- java 构造器调用顺序
- Java构造器调用规范
- Java 构造器之构造器的隐式调用和显式调用
- Java构造器:级联调用,调用兄弟构造器
- think in java之构造器的真正调用顺序
- think in java之构造器的真正调用顺序
- Think in Java之构造器的真正调用顺序
- Think in Java之构造器的真正调用顺序
- Think in Java之构造器的真正调用顺序
- 《Thinking in Java》笔记之调用构造器顺序
- Java 学习----子类构造器 调用 父类构造器
- java 构造器内调用另一个构造器方法
- Java中的构造器(构造方法)的调用
- Java之构造器<constructor>
- hdu1863畅通工程 最小生成树 Kruskal算法
- Android放大镜的使用
- Dragger2使用心得笔记
- offset,offsetTop
- android软键盘的隐藏以及Edittext的焦点问题
- Java 构造器调用构造器之“找不到符号”
- 关于hibernate一个uuid和timestamp的映射问题
- zookeeper如何实现分布式锁(羊群效应)
- C# 合并及拆分Word文档
- HDU 2196
- 如何设置tomcat 7最大连接数 、最大并发连接数?
- Linux : timerfd
- 数组排序之选择排序:
- 元素宽高