大家看这个程序,请问,子类overWrite 父类的方法,形参一定要一样吗?构造函数和普通函数的覆盖有没有区别? 1、子类overWrite 父类方法的时候参数类型数目一定一样!!2、每个类的构造函数都会自动调用父类的默认构造函数,除非你手工声明(调用super关键字) 当你在子类中声明构造函数public subClass(int a1,int b1, int c1)时,它会自动调用 父类的无参数构造函数,而你已在父类中显示声明了一个有参数的构造函数,所以会出错3、构造函数没有覆盖,只有重载 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.子类overWrite 父类的方法,形参一定要一样吗参数当然要一样,参数名字就无所谓了.2.super(a1, b1);//这里不写编译不能通过,为什么?因为不写super的话就调用父类的无参构造函数,但是你的父类没有无参构造函数,所以必须自己写super语句.2.构造函数和普通函数的覆盖有没有区别?构造函数其实没有覆盖的概念! 形参不同,就不成为覆盖,就是另外一个函数了。覆盖是指函数名、返回值类型、参数个数和参数类型完全相同,且public或private也相同。 1.子类overWrite 父类的方法,形参一定要一样吗?要一样2.super(a1, b1);//这里不写编译不能通过,为什么?你的父类没有无参构造函数3.构造函数和普通函数的覆盖有没有区别?构造函数不会覆盖。 public subClass(int a1,int b1, int c1)这里多了一个参数,如何解释呢???? public TestExtends1(int a, int b) public subClass(int a1,int b1, int c1) 上面都是两个类的构造器,也就是说 父类和子类的构造器里参数可以不同。(这是一定,编译运行都正常)我只是对这里:super(a1, b1); 不是很理解! 有什么不理解的,super(a1, b1)就是直接调用TestExtends1(int a, int b)啊 override有几点要注意1.父类为protected,friendly的方法,子类可以定义为public,只要子类的比父类的松就行2.还有异常,子类方法抛出的异常必须为父类方法的子类或者和父类相同,也可以不抛出 jdk-6u7-windows-i586-p.exe 后面的-p是什么意思 老鸟看过来:java怎么编译成可执行性文件? swing如何设置焦点快捷键? java输出 求达人解代码 我想将两个图片合成一副图片怎么做? 用java如何实现对图片旋转? 客户端文件上传到服务器保存在数据库中 怎么实现啊? 如何使用内部类的一个问题!谢谢 在线等待!!JBiulder 7 如何注册?急啊 为什么我在windows2003上安装j2sdk1.4.2的时候提示我出错,错误是什么2755 关于申明主类的方法???
参数当然要一样,参数名字就无所谓了.2.super(a1, b1);//这里不写编译不能通过,为什么?
因为不写super的话就调用父类的无参构造函数,但是你的父类没有无参构造函数,所以
必须自己写super语句.2.构造函数和普通函数的覆盖有没有区别?
构造函数其实没有覆盖的概念!
要一样
2.super(a1, b1);//这里不写编译不能通过,为什么?
你的父类没有无参构造函数
3.构造函数和普通函数的覆盖有没有区别?
构造函数不会覆盖。
public subClass(int a1,int b1, int c1) 上面都是两个类的构造器,也就是说 父类和子类的构造器里参数可以不同。(这是一定,编译运行都正常)
我只是对这里:super(a1, b1); 不是很理解!
1.父类为protected,friendly的方法,子类可以定义为public,只要子类的比父类的松就行
2.还有异常,子类方法抛出的异常必须为父类方法的子类或者和父类相同,也可以不抛出