Java中自动生成构造方法详解
作者:StellaAh 时间:2023-06-21 14:17:44
Java中自动生成构造方法详解
每个类在没有声明构造方法的前提下,会自动生成一个不带参数的构造方法,如果类一但声明有构造方法,就不会产生了.证明如下:
例1:
class person
{
person(){System.out.println("父类-person");}
person(int z){}
}
class student extends person
{
// student(int x ,int y){super(8);}
}
class Rt
{
public static void main(String[]args)
{
student student_dx=new student();//创建student类的对象
}
}
//输出结果:父类-person
例2:
class person
{
person(){System.out.println("父类-person");}
person(int z){}
}
class student extends person
{
student(int x ,int y){super(8);}
}
class Rt
{
public static void main(String[]args)
{
student student_dx=new student(3,4);//创建student类的对象
}
}
//没有输出结果
例1说明:student类自动生成student() {super();}(前提是:student类没有声明构造方法的前提下) 'super()'是用来调用父类的构造方法.
例2中的person()方法没有被调用,说明student类没有产生student(){super();}方法.这是因为student类已经声明构造方法,默认的那个不带参数的构造方法就不产生了.
再举例:
class person
{
person(int z){}
}
class student extends person
{
}
class Rt
{
public static void main(String[]args)
{
student student_dx=new student();//创建student类的对象
}
}
/*报错:
exercise14.java:8: 找不到符号
符号: 构造函数 person()
位置: 类 person
class student extends person
^
1 错误
*/
说明:student类自动产生了一个student(){super();},但是由于person类已经声明了构造方法,默认的那个带参数的构造方法没有产生.,所以报错中提到找不到构造函数person()
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
标签:Java,自动生成,构造方法
0
投稿
猜你喜欢
Java类中字段可以不赋予初始值的原因分析
2023-01-05 15:55:49
Android中使用Toast.cancel()方法优化toast内容显示的解决方法
2021-12-14 05:17:03
java实现打砖块小游戏
2021-07-26 14:47:11
Flutter 如何正确显示SnackBar
2023-06-23 13:00:40
Jenkins自动化打包为war包
2021-08-08 20:25:49
C#多线程的Join()方法
2022-05-08 23:56:13
Java ArrayList扩容问题实例详解
2022-05-08 08:57:57
Android实现创建或升级数据库时执行语句
2022-07-10 11:58:58
c#访问this关键字和base关键字示例
2021-09-28 23:36:14
android在异步任务中关闭Cursor的代码方法
2022-04-21 18:07:32
Android 列表选择框 Spinner详解及实例
2021-11-18 14:59:08
解决@ConfigurationProperties注解的使用及乱码问题
2023-09-08 06:55:10
C#实现文件分割和合并的示例详解
2023-05-24 21:04:03
详解怎么用Java的super关键字
2021-10-06 08:11:14
Android自定义View图片按Path运动和旋转
2022-09-15 22:53:11
android开发教程之startActivityForResult使用方法
2022-04-03 13:46:16
Java实现Excel导入导出的步骤详解
2022-09-05 05:20:32
winform 实现控制输入法
2022-05-01 11:35:38
Java中EasyPoi多sheet导出功能实现
2023-01-15 08:10:39
详解mybatis-plus配置找不到Mapper接口路径的坑
2022-03-12 10:37:45