(转载)个人笔记之-----构造函数
2015-06-12 08:27
337 查看
1、构造函数的使用
类有一个特殊的成员方法叫做构造方法,它的作用是创建对象并初始化成员变量。在创建对象时,会自动调用类的构造方法。
JAVA中构造方法必须与该类具有相同的名字,并且没有方法的返回类型(包括没有void)。另外,构造方法一般都应用public 类型来说明,这样才能在程序的任意位置创建类的实例---对象。
每个类至少有一个构造方法。如果不写一个构造方法,JAVA将提供一个默认的,该构造方法没有参数,而且方法体为空。
注意:如果一个类中已经定义了构造方法则系统不再提供默认的构造方法
例子:
package test01;
public class Hello {
int id;
String username;
String password;
public Hello(int id)
{
this.id = id;
System.out.println("构造函数1:id=" id);
}
public Hello(int i,String username,String password)
{
//此时,i这个局部变量没有和成员变量重名,所以不用指定
this.username = username;
this.password = password;
System.out.println("构造函数2:username=" username " password=" password);
}
public Hello()
{
//用this调用上面的构造函数,必须上面有定义下面才能使用。
this(5,"hualang","123456");
}
public static void main(String args[])
{
Hello hello1 = new Hello(3);
Hello hello2 = new Hello(4,"loulijun","666666");
Hello hello3 = new Hello();
}
}
输出结果:
Java代码
构造函数1:id=3
构造函数2:username=loulijun password=666666
构造函数2:username=hualang password=123456
类有一个特殊的成员方法叫做构造方法,它的作用是创建对象并初始化成员变量。在创建对象时,会自动调用类的构造方法。
JAVA中构造方法必须与该类具有相同的名字,并且没有方法的返回类型(包括没有void)。另外,构造方法一般都应用public 类型来说明,这样才能在程序的任意位置创建类的实例---对象。
每个类至少有一个构造方法。如果不写一个构造方法,JAVA将提供一个默认的,该构造方法没有参数,而且方法体为空。
注意:如果一个类中已经定义了构造方法则系统不再提供默认的构造方法
例子:
package test01;
public class Hello {
int id;
String username;
String password;
public Hello(int id)
{
this.id = id;
System.out.println("构造函数1:id=" id);
}
public Hello(int i,String username,String password)
{
//此时,i这个局部变量没有和成员变量重名,所以不用指定
this.username = username;
this.password = password;
System.out.println("构造函数2:username=" username " password=" password);
}
public Hello()
{
//用this调用上面的构造函数,必须上面有定义下面才能使用。
this(5,"hualang","123456");
}
public static void main(String args[])
{
Hello hello1 = new Hello(3);
Hello hello2 = new Hello(4,"loulijun","666666");
Hello hello3 = new Hello();
}
}
输出结果:
Java代码
构造函数1:id=3
构造函数2:username=loulijun password=666666
构造函数2:username=hualang password=123456
相关文章推荐
- 垂死或涅槃重生 -- Delphi XE5 我们将宣布感情的回归
- Xcode 升级后,常常遇到的遇到的警告、错误,解决方法
- ASP.NET API盘点
- uva 11992 为矩阵更新查询段树
- Encode_2
- xcode5下一个ffmpeg静态库配置
- 为什么使用快排?
- wget下载整个网站
- 与满二叉树完全二叉树
- ubuntu 下安装nginx
- Structure from Motion Using OpenCV
- 《大话设计模式》--分公司=一部门--组合模式<Composite>(19)
- jsp 使内容变成灰色 不可编辑
- 关于JAVA中事件分发和监听机制实现的代码实例-绝对原创实用
- Dynamics AX 2012 R3 Demo 安装与配置 - 导入测试数据 (Step 4)
- CDH报错:Traceback (most recent call last): File "<string>", line 1, in <module> File "<string>"
- 【BZOJ3270】博物馆 概率DP 高斯消元
- 关于C(m,n)%p的故事
- java string is immutable
- jsp 获取当前页面时间 并对时间进行比较