zoukankan      html  css  js  c++  java
  • 课后作业(2)

    动手动脑:

    1. Foo obj1=new Foo();这段代码为何报错?

      原因是程序中在Foo类中已经定义了一个有参的构造方法,当类中若已有有参的构造方法时,系统将不会再生成无参的构造方法,所以new Foo()就没有构造方法可以执行,所以报错。

    2. 程序执行构造方法的顺序。

     A:当程序中既有有参的构造方法又有无参的构造方法时,若声明对象时有参,那么执行有参的构造方法,如图:

    B:当声明的对象无参时,执行无参的构造方法,如图:

    C:若无参的构造方法无内容时,先执行变量定义时默认的值,如图:

    D:当没有默认值时,执行初始化块的内容:

    3. 静态初始化的执行顺序:

      A:调用父类的静态初始化模块B:调用子类的静态初始化模块C:调用父类的初始化模块D:调用父类的无参构造函数E:调用子类的初始化模块F:调用子类的无参构造函数F:调用子类的有参构造函数

    4. 如何用静态方法访问类的实例成员:、

       让静态方法引用该类的一个实例对象,如图:

    Interger类的问题:

    通过查询jdk找到Interger类中的valueOf方法,执行的代码如下:

    public static Integer valueOf(int i) {
    if (i >= IntegerCache.low && i <= IntegerCache.high)
    return IntegerCache.cache[i + (-IntegerCache.low)];
    return new Integer(i);
    }

  • 相关阅读:
    Objective-C 排序
    Objective-C 工厂方法
    Objective-C 关键字:retain, assgin, copy, readonly,atomic,nonatomic
    iOS UINavigationController的使用
    iOS UITabBarController的使用
    iOS UISearchController的使用
    iOS中延时执行的几种方式的比较和汇总
    iOS适配 旧项目工程在iOS9下不能正常显示
    iOS Block界面反向传值
    iOS Block简介
  • 原文地址:https://www.cnblogs.com/zhangliqiangvictory/p/7684066.html
Copyright © 2011-2022 走看看