Writer :BYSocket(泥沙砖瓦浆木匠)
微 博: BYSocket
豆 瓣: BYSocket
FaceBook: BYSocket
Twitter : BYSocket
String hello = "hello";
《Think in Java》 中说道:
随着计算机革命的发展,”不安全“的编程方式已逐渐成为编程代价高昂的主因之一。
public class VoidConstructor { VoidConstructor(){ // 构造器 } void VoidConstructor() { // void 方法,不是构造器 } }
1、默认构造器
这里,VoidConstructor是一个类,如果需要创建一个VoidConstructor对象只要
VoidConstructor constr = new VoidConstructor();
2、注意, 构造器 是 特殊 的 方法 ,采取与 类名同名 。它 没有返回值 ,这与 返回值 为 空 的 void方法 不同。这里,void方法名命名也是不规范,应该是“ 每个方法首字母小写 ”,也一般不与类名相同。
另外,就算你类没有写构造器的话,编译器会生成一个默认构造器。
下面跑个带参构造器的例子:
/** * @author Jeff Lee * @since 2015-9-7 16:54:19 * 带参数简单构造器的展示 */ public class SimpleConstructor2 { public static void main(String[] args) { for (int i = 0; i < 10; i++) { new Child2(i); } } } // Child类 class Child2 { Child2(int i) {// 带参数的Child类构造器 System.out.print("Child init " + i + " "); } }
休息一下吧~ 看看小广告:
开源代码都在我的gitHub上哦 — https://github.com/JeffLi1993 作者留言“ 请手贱,点项目star,支持支持拜托拜托 ”
在创建一个对象时,所以继承下来的对象都会被调用各构造器。比如说下面这个例子:
/** * @author Jeff Lee * @since 2015-9-10 08:56:18 * 继承中的构造器的案例 */ public class ChildConstructor extends PersonConstructor{ ChildConstructor() {
//super();
System.out.println("Making a Child Modle..."); } @SuppressWarnings("unused") public static void main(String[] args) { ChildConstructor childConstructor = new ChildConstructor(); } } class PersonConstructor { PersonConstructor() { System.out.println("Making a Person Modle..."); } }
main函数运行结果如下:
1. 先分析下类 UML ,ChildConstructor 继承 PersonConstructor,PersonConstructor 继承 Object:
构造器虽小,关键还是非常关键的。
本文小结:
1、默认构造器
2、有参构造器
3、继承中的构造器
还有第一点的知识基础补充
欢迎点击我的博客及GitHub — 博客提供RSS订阅哦!
———- http://www.bysocket.com/ ————- https://github.com/JeffLi1993 ———-