Maison  >  Article  >  Java  >  Java之类的主动使用和被动使用

Java之类的主动使用和被动使用

黄舟
黄舟original
2017-01-17 15:21:061583parcourir

提出问题

Java类的主动使用和被动使用分别是那些情况???

解决问题

Java类主动使用情况,会导致类的初始化: 

1)创建类的实例 

2)访问某个类或接口的静态变量,或者对该静态变量赋值 

3)调用类的静态方法 

4)反射(如Class.forName(“com.bunny.Test”)) 

5)初始化一个类的子类 

6)Java虚拟机启动时被表明为启动类的类(JavaTest)

其他使用java类方式,都可以被看作是被动使用,都不会导致类的初始化。

[code]package com.evada.de;

class ChildClass extends  ClassUsed{
    public static int c = 0;
}

/**
 * Created by Ay on 2016/5/24.
 */
public class ClassUsed {

    public static int a = 0;

    public static void main(String[] args) throws Exception{

        /** 创建类的实例  **/
        ClassUsed classUsed = new ClassUsed();

        /** 访问某个类或接口的静态变量,或者对该静态变量赋值 **/
        int b = ClassUsed.a;

        /** 调用类的静态方法  **/
        ClassUsed.test();

        /** 反射 **/
        Class.forName("com.bunny.Test");

        /** 初始化一个类的子类 **/
        ChildClass.c = 10;

        /** Java虚拟机启动时被表明为启动类的类 **/
        //java com.hwy.MyTest
    }

    public static void test(){

    }
}

以上就是Java之类的主动使用和被动使用的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn