Java的无参构造函数用法实例分析

这篇文章主要介绍了Java的无参构造函数用法,结合实例形式分析了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程序设计有所帮助。

相关文章

HashMap是Java中最常用的集合类框架,也是Java语言中非常典型...
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,...
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说...
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它...
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对...
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进...