默认构建器
2008-01-05 09:53:11 来源:WEB开发网核心提示:正如早先指出的那样,默认构建器是没有自变量的,默认构建器,它们的作用是创建一个“空对象”,若创建一个没有构建器的类,你已写了一个构建器,所以我知道你想干什么;假如你不放置一个默认的,则编译程序会帮我们自动创建一个默认构建器,例如://: DefaultConstrUCtor.javaclass Bird {int i;
正如早先指出的那样,默认构建器是没有自变量的。它们的作用是创建一个“空对象”。若创建一个没有构建器的类,则编译程序会帮我们自动创建一个默认构建器。例如:
//: 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();
编译程序就会报告自己找不到一个相符的构建器。就好象我们没有设置任何构建器,编译程序会说:“你看来似乎需要一个构建器,所以让我们给你制造一个吧。”但假如我们写了一个构建器,编译程序就会说:“啊,你已写了一个构建器,所以我知道你想干什么;假如你不放置一个默认的,是由于你打算省略它。”
- ››构建Windows 8风格应用23-App Bar概述及使用规范
- ››构建域名服务器(DNS)
- ››构建Android平台Google Map应用
- ››构建WinForm 通用速选(全选、反选、清空)组件
- ››构建Wordpress网站首选的5家国外主机
- ››构建高性能和高弹性 WebSphere eXtreme Scale 应用...
- ››构建前端UI组件的新思路
- ››构建 Android 开发环境
- ››构建 pureXML 和 JSON 应用程序,第 3 部分: 为 p...
- ››构建 ESB 中介来将分隔文件转换为服务调用
- ››构建一个 Twitter Web 应用程序
- ››构建基于 CDT 的编辑器,第 1 部分: C/C++ 开发工...