Java开发网 Java开发网
注册 | 登录 | 帮助 | 搜索 | 排行榜 | 发帖统计  

您没有登录

» Java开发网 » Java SE 综合讨论区 » 学习心得/方法/资源  

按打印兼容模式打印这个话题 打印话题    把这个话题寄给朋友 寄给朋友    该主题的所有更新都将Email到你的邮箱 订阅主题
flat modethreaded modego to previous topicgo to next topicgo to back
作者 关于默认构建器的程序解释
yujian





发贴: 6
积分: 0
于 2006-01-09 21:25 user profilesend a private message to usersearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
默认构建器是没有自变量的。它们的作用是创建一个“空对象”。若创建一个没有构建器的类,则编译程序会帮我们自动创建一个默认构建器。例如:

//: DefaultConstructor.java

class Bird {
int i;
}

public class DefaultConstructor {
public static void main(String[] args) {
Bird nc = new Bird(); // default!

}
} ///:

结果:



---------------------------
对于下面这一行:
new Bird();
它的作用是新建一个对象,并调用默认构建器——即使尚未明确定义一个象这样的构建器。若没有它,就没有方法可以调用,无法构建我们的对象。然而,如果已经定义了一个构建器(无论是否有自变量),编译程序都不会帮我们自动合成一个:

class Bush {
Bush(int i) {}
Bush(double d) {}
}

现在,假若使用下述代码:
new Bush();
编译程序就会报告自己找不到一个相符的构建器。就好象我们没有设置任何构建器,编译程序会说:“你看来似乎需要一个构建器,所以让我们给你制造一个吧。”但假如我们写了一个构建器,编译程序就会说:“啊,你已写了一个构建器,所以我知道你想干什么;如果你不放置一个默认的,是由于你打算省略它。”

---------------

qq:249323079
java爱好者有兴趣交流
-------------------------------




各位大哥赐教,我是超超超新人,怎么学JAVA?

话题树型展开
人气 标题 作者 字数 发贴时间
8171 关于默认构建器的程序解释 yujian 759 2006-01-09 21:25
6128 Re:关于默认构建器的程序解释 ranchgirl 142 2006-01-09 23:25
6253 Re:关于默认构建器的程序解释 yujian 45 2006-01-10 08:59
6160 Re:关于默认构建器的程序解释 why 202 2006-01-10 11:41
6971 Re:关于默认构建器的程序解释 轻薄的假象 15 2006-01-10 21:59

flat modethreaded modego to previous topicgo to next topicgo to back
  已读帖子
  新的帖子
  被删除的帖子
Jump to the top of page

   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923