zoukankan      html  css  js  c++  java
  • 验证课件上的代码,并将所有的动手动脑或要求发表博客作业部分整理成一篇博客发表。

    1、请运行TestStaticInitializeBlock.java示例,观察输出结果,总结出“静态初始化块的执行顺序”。

        答:1、静态初始化块的优先级最高,也就是最先执行,并且仅在类第一次被加载时执行;

          2、非静态初始化块和构造函数后执行.

          3、非静态初始化块的代码会在类构造函数之前执行。

    2、静态方法中只允许访问静态数据,那么,如何在静态方法中访问类的实例成员(即没有附加static关键字的字段或方法)?

      答: public class Test{
       int j =1;
       static int value; 
       public static void M()
       {

          System.out.println(value); 

      } 
       public int N()
       {  
          int x = 100;  
          return x; 
        }  
       public static void main(String args[]) {  
          Test1 a = new Test1(); 
          value = a.N(); 
          a.M(); 
        }

      } 

    3、两对整数明明完全一样,为何一个输出true,一个输出false?

                  

          答:在通过valueOf方法创建Integer对象的时候,如果数值在[-128,127]之间,便返回指向IntegerCache.cache中已经存在的对象的引用;否则创建一个新的Integer对象。

      上面的代码中i1和j2的数值为100,因此会直接从cache中取已经存在的对象,所以i1和j1指向的是同一个对象,而i2和j2则是分别指向不同的对象。(查资料)

  • 相关阅读:
    LaTeX —— 特殊符号与数学字体
    LaTeX —— 特殊符号与数学字体
    实战caffe多标签分类——汽车品牌与车辆外观(C++接口)[详细实现+数据集]
    家书与家训
    家书与家训
    Handler总结
    (step5.1.3)hdu 1213( How Many Tables——1213)
    JavaScript+XML+VBA导出报表初步构想
    XML学习总结
    JSP 9 大内置对象详解
  • 原文地址:https://www.cnblogs.com/ydy1/p/7698734.html
Copyright © 2011-2022 走看看