zoukankan      html  css  js  c++  java
  • 作业

    此时输出结果为100 300.

     

    将field200放在int field之后结果变为200 300.

    执行类成员时,要看类定义时的值哪个排在前边,就执行那一个值。

    静态方法要想访问同一类中的非静态成员,需要将实例成员的值赋给静态成员,再用静态方法访问静态成员,进而访问实例成员。

     

    课后作业:

     

    当多个类之间有继承关系时,创建子类对象会导致父类初始化块的执行。请自行编写示例代码验证以上结论:

    实验代码:

    package demo;

     

    public class Test {

     

        public static void main(String[] args) {

            // TODO 自动生成的方法存根  

            Grandson kd=new Grandson();

        }

     

    }

    class Dad

    {

        String post="dad";

        Dad()

        {

            System.out.println("dad="+post);

        }

       

    }

    class Son extends  Dad

    {

        String post="son";

        Son()

        {

            System.out.println("son="+post);

        }

       

    }

    class Grandson extends  Son

    {

        String post="grandson";

         Grandson()

        {

            System.out.println("son="+post);

        }

       

    }

    实验结果dad=dad;

    son=son;

    grandson=grandson;

    动手动脑:

    如果定义初始化块时使用了static修饰符,则变成了静态初始化块。静态初始化块时类相关的,系统将在类初始化阶段执行静态初始化块,而不是在创建对象时才执行。

    因此静态初始化块总是比普通初始化块先执行。

    .

    此时输出结果为100 300.

    将field200放在int field之后结果变为200 300.

    执行类成员时,要看类定义时的值哪个排在前边,就执行那一个值。

    静态方法要想访问同一类中的非静态成员,需要将实例成员的值赋给静态成员,再用静态方法访问静态成员,进而访问实例成员。

    课后作业:

    当多个类之间有继承关系时,创建子类对象会导致父类初始化块的执行。请自行编写示例代码验证以上结论:

    实验代码:

    package demo;

     

    public class Test {

     

        public static void main(String[] args) {

            // TODO 自动生成的方法存根  

            Grandson kd=new Grandson();

        }

     

    }

    class Dad

    {

        String post="dad";

        Dad()

        {

            System.out.println("dad="+post);

        }

       

    }

    class Son extends  Dad

    {

        String post="son";

        Son()

        {

            System.out.println("son="+post);

        }

       

    }

    class Grandson extends  Son

    {

        String post="grandson";

         Grandson()

        {

            System.out.println("son="+post);

        }

       

    }

    实验结果dad=dad;

    son=son;

    grandson=grandson;

    动手动脑:

    如果定义初始化块时使用了static修饰符,则变成了静态初始化块。静态初始化块时类相关的,系统将在类初始化阶段执行静态初始化块,而不是在创建对象时才执行。

    因此静态初始化块总是比普通初始化块先执行。

    .

  • 相关阅读:
    概率论——随机事件及其概率
    Web应用程序项目以配置使用IIS。未找到Web服务器”链接地址”
    LaTeX中.sty文件缺失解决办法
    IIS中的经典模式和集成模式有什么区别
    判断有序整型数组中是否存在两数,相加之和等于给定的任意整数
    51Job的搜索技巧
    登录失败。该登录名来自不受信任的域,不能与 Windows 身份验证一起使用。
    Ubuntu使用Latex模板moderncv写简历
    COM相关操作(C#)
    什么是单线程单元(STA)什么是多线程单元(MTA)
  • 原文地址:https://www.cnblogs.com/my1204/p/4887687.html
Copyright © 2011-2022 走看看