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


    类的构造方法:

        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

  • 相关阅读:
    文件拖放
    有关函数传参的结构赋值的理解
    js_点击弹出图片
    js 比较网址与a链接
    css——鼠标经过按钮时样式(radial-gradient)
    文字跳动
    kafka 数据存储和发送
    kafka 消息存储分析
    Kafka 内存管理类BufferPool
    聊聊kafka-client的源码
  • 原文地址:https://www.cnblogs.com/Zf451452043/p/5984631.html
Copyright © 2020-2023  润新知