Java的无参构造函数用法实例分析
本文实例讲述了Java的无参构造函数用法。分享给大家供大家参考,具体如下:
一 点睛
1 如果一个类没有定义任何构造函数,那么该类会自动生成1个默认的构造函数。默认构造函数没有参数。
2 如果一个类定义了构造函数,但这些构造函数都有参数,那么不会生成默认构造函数,也就是说此时类没有无参的构造函数。
通过两个例子来说明。
二 使用无参构造函数的错误
1 代码
public class ConstructWithNoPara
{
public static void main( String[] args )
{
Person p = new Person(); // 此行有错误,没有不含参数的构造函数
p.talk();
}
}
class Person
{
private String name;
private int age;
public Person( int age )
{
name = "Yuhong";
this.age = age;
}
public Person( String name, int age )
{
this.name = name;
this.age = age;
}
public void talk()
{
System.out.println( "我叫:" + name + " 我今年:" + age + "岁" );
}
}
2 运行
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The constructor Person() is undefined
at ConstructWithNoPara.main(ConstructWithNoPara.java:18)
三 正确使用无参构造函数
1 代码
public class ConstructOverload
{
public static void main( String[] args )
{
Person p = new Person();
p.talk();
}
}
class Person
{
private String name;
private int age;
public Person()
{
name = "cakin";
age = 22;
}
public Person( int age )
{
name = "kehr";
this.age = age;
}
public Person( String name, int age )
{
this.name = name;
this.age = age;
}
public void talk()
{
System.out.println( "我叫:" + name + " 我今年:" + age + "岁" );
}
}
2 运行
我叫:cakin 我今年:22岁
更多java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
相关文章
Spring中@Autowired和@Resource注解的使用区别详解
这篇文章主要介绍了Spring中@Autowired和@Resource注解的使用区别详解,@Autowired默认根据type进行注入,找到与指定类型兼容的 Bean 并进行注入,如果无法通过type匹配到对应的 Bean 的话,会根据name进行匹配,如果都匹配不到则抛出异常,需要的朋友可以参考下2023-11-11
java中使用session监听实现同帐号登录限制、登录人数限制
本文主要介绍了java中使用session监听实现同帐号登录限制、登录人数限制,通过session来监听在线人数和登陆限制,有需要的童鞋可以了解一下。2016-10-10
Hibernate的Session_flush与隔离级别代码详解
这篇文章主要介绍了Hibernate的Session_flush与隔离级别代码详解,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下2018-02-02


最新评论