码迷,mamicode.com
首页 > 其他好文 > 详细

第四次作业,类,构造函数的初始化

时间:2016-10-21 15:41:21      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:类成员   规律   之间   输出   代码   互调   默认   test   color   

类的构造方法:

    public class Test {

        public static void main(String[] args) {

            Foo obj1 = new Foo();

        }

    }

    class Foo {

        int value;

        public Foo (int initValue) {

        value = initValue;

        }

    }

无法通过编译。
因为如果类提供了一个自定义的构造方法,将导致系统不再提供默认构造方法。

多构造函数:

同一个类可以有多个构造函数,多个构造函数之间通过参数来区分。这是方法重载的一个实例。

构造函数之间可以相互调用。

    class Fruit {
            int grams;
            int calsPerGram;
            Fruit() {
                this(55,10);
            }
            Fruit(int g,int c){
                grams=g;
                calsPerGram=c;
            }
    }

类的初始化:

Java字段初始化的规律,

如果使用上面定义的类,思考一下代码的输出结果:

    public static void main(String[] args) {
      InitializeBlockClass obj = new InitializeBlockClass();
      System.out.println(obj.field);  //
      obj = new InitializeBlockClass(300);
      System.out.println(obj.field);  //
    }

 

规律(类字段的初始化顺序):

执行类成员定义时指定的默认值或类的初始化块,到底执行哪一个要看哪一个“排在前面”。

执行类的构造函数。

类的初始化块不接收任何的参数,而且只要一创建类的对象,它们就会被执行。因此,适合于封装那些“对象创建时必须执行的代码”。

ok

第四次作业,类,构造函数的初始化

标签:类成员   规律   之间   输出   代码   互调   默认   test   color   

原文地址:http://www.cnblogs.com/Zf451452043/p/5984631.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!