zoukankan      html  css  js  c++  java
  • 动手动脑

    以下代码为何无法通过编译?哪儿出错了?

    两个构造方法一个有参,一个无参。

    执行以下代码,出现的结果是什么?

    结果:100,300;

    java字段初始化规律:

    当类中有初始化块时,如果调用无参数的构造函数,则按照程序的顺序逐一调用函数,后边的函数可替换前面的。若调用的是有参的构造函数,则输出的是赋的初值。

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

    静态初始化块只执行一次。创建子类型的对象时,也会导致父类型的静态初始化块的执行

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

    public class Jingtai {

    public  int num;

     static void change(Jingtai a)

     {

     a.num=10;

     }

    public static void main(String[] args)

    {

    Jingtai b=new Jingtai();

    b.num=100;

    b.change(b);

    System.out.println(b.num);

    }

    }

    结果:5

    一般静态方法是不能访问类的非静态成员函数以及非静态的变量,因为类里边的静态成员属于类,不用声明类的对象时,静态成员就已经存在了,而非静态成员必须在声明类的对象后才可以分配内存空间,所以类的对象不可以访问类中静态成员。如果先要在静态成原函数中调用非静态中的变量或方法,可以在静态成员函数中声明一个类的对象,然后再调用类的非静态成员或方法。

  • 相关阅读:
    CSS概述
    CSS基础
    CSS定位与布局
    CSS动画,2D和3D模块
    第一硬汉左宗棠死了,晚清再无脊梁!
    南怀瑾老师:读书万卷,神交古人
    左宗棠读书修身8句,神交古人
    神交古人
    心忧天下,神交古人
    ECCV 2016 paper list
  • 原文地址:https://www.cnblogs.com/lxdjieshang/p/7699030.html
Copyright © 2011-2022 走看看