A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

class Animal{
int a;
int b;
}
class Cat{
int c ;
public Cat(int a,int b,,int c){
super(a , b);
this.c=c;
}
}
教科书上说不可以,但是我编译了为什么没有报错?

12 个回复

倒序浏览
没人回复吗
回复 使用道具 举报
孩纸,应该是都用于调用构造函数时,都只能放在第一有效行。
你这this.c=c;可不是调用构造函数
回复 使用道具 举报
不能共存针对于this()、和super();   有没有小括号是俩意思,有小括号代表是用构造
回复 使用道具 举报
this()与super()不能共存
但this与super可以共存
回复 使用道具 举报
没有继承Animal就是继承了Object啊,Object只有空参构造函数啊而且Animal没有构造函数啊
super()是调用父类的构造方法
回复 使用道具 举报
this()和super()不能共存
回复 使用道具 举报
tiankog 发表于 2016-9-12 00:04
this()和super()不能共存

谢谢啊,我也刚刚发现
回复 使用道具 举报
不能共存呀.上课的时候应该说过了吧....翻翻笔记就好了.
回复 使用道具 举报
...原来是这样的,学习了
回复 使用道具 举报
因为你  的this调用的是本类的变量   不是父类的  所以不会报错  你把  int  c  放到上面去   就报错了
回复 使用道具 举报
super和this都用来调用构造方法时,是无法同时使用的,因为这两句在使用时,都必须放在方法第一句,所以不能同时使用。
回复 使用道具 举报
可以的啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马