构造函数到底有什么作用??

suncs2001 2004-04-01 10:55:45
到底构造函数是有什么作用,如果你在程序里定义了构造函数,那你是想用他作甚么呢,换句话说,什么时候要定义构造函数呢?
...全文
568 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
agong1980 2004-04-06
  • 打赏
  • 举报
回复
生成对象并初始化
Minsc79 2004-04-05
  • 打赏
  • 举报
回复
上面不全,看这个
//这里是构造函数,构造对象赋值的方法
public class Light{
//构造函数1
Light(String ln,int lw,int ls){
ltName=ln;
ltWatt=lw;
ltStatus=ls;
}
//构造函数2
Light(String ln,int lw){
ltName=ln;
ltWatt=lw;
ltStatus=0;
}
protected String ltName;
protected int ltWatt;
protected int ltStatus;
}
class Run{
public static void main(String args[]){
Light ln=new Light("Philips",40);//调用第二个构造函数
}
}
Minsc79 2004-04-05
  • 打赏
  • 举报
回复
public class Light{
Light(String ln,int lw,int ls){
ltName=ln;
ltWatt=lw;
ltStatus=ls;
}

Light(String ln,int lw){
ltName=ln;
ltWatt=lw;
ltStatus=0;
}
class Run{
public static void main(String args[]){
Light ln=new Light("Philips",40);
}
}
2个构造函数,看你怎么创造对象就调用其中一个
chrisjen 2004-04-05
  • 打赏
  • 举报
回复
用概念讲有点抽象,在编程过程中自然会feel到的.
programer23 2004-04-03
  • 打赏
  • 举报
回复
别忘了给分哟!
programer23 2004-04-03
  • 打赏
  • 举报
回复
其实楼上说的不错,其实他们都没说在点子上。
无论你初始化也好,别的也好,都是调用的构造函数也就是一个方法(构造方法)。
他的精髓是“不用产生对象,便可直接调用方法!”
以前都是你先创造出对象,在用对象调用方法。
而这个不用,而且方法调用的还非常快。
leeak 2004-04-02
  • 打赏
  • 举报
回复
简单的说就是初始化
suncs2001 2004-04-02
  • 打赏
  • 举报
回复
比如我的类里有5个量。
public class A

private a;
private b;
private c;

}
这里有3个量,那么在构造函数里可不可以只定义2个量??
TIANHEI 2004-04-02
  • 打赏
  • 举报
回复
实例化对象
burnet 2004-04-02
  • 打赏
  • 举报
回复
ps,英文中叫constructor.
JackyRind 2004-04-02
  • 打赏
  • 举报
回复
数据成员不要在构造函数里定义,构造函数可以帮你做一些初始化的动作
比如你的a b c 都没有初始化,比如是AA类型的,如果是基础类型的都有默认值,比如整形的是0等,但是非基础类型的都是null,构造函数不但可以初始化一些成员,还可以执行一些别的动作
public class A{

private AA a;
private AA b;
private AA c;
A(){
a = new AA();
//.....
}

}
老土豆T 2004-04-02
  • 打赏
  • 举报
回复
如果不写,则系统会默认给一个。但缺省的构造函数不帮你做任何事情。只是实例化一个类。

如果你需要构造一个函数的时候就必须完成一系列事情,那就要自己定义一些构造函数了。。当然要根据具体的设计,和语意来了。
junxi 2004-04-01
  • 打赏
  • 举报
回复
生成对象并初始化
lu8088 2004-04-01
  • 打赏
  • 举报
回复
生成一个实例
venursa 2004-04-01
  • 打赏
  • 举报
回复
同意思楼上...
rainver 2004-04-01
  • 打赏
  • 举报
回复
当你实例化一个对象时
比如有class A
产生A的类的一个对象用
A a = new A();
这个过程调用了构造函数,使用的是默认构造函数
当用
A a = new A(“参数列”);使用的就是符合参数列的构造函数
注意,如果没有自己写构造函数,编译时会自动生成默认构造函数
如果自己有写构造函数,编译时不会自动生成默认构造函数
wulemale 2004-04-01
  • 打赏
  • 举报
回复
生成对象并初始化

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧