栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

私有静态字段的设定值

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

私有静态字段的设定值

基本上,问题是您的实用程序方法,该方法假设您有一个实例。设置私有静态字段相当容易-
与实例字段完全相同,但您指定

null
为实例除外。不幸的是,您的实用程序方法使用实例来获取类,并要求该类为非null …

我会回应汤姆的警告:不要那样做。如果这是您可以控制的类,那么我将创建一个包级方法:

void setFooForTesting(Bar newValue){    foo = newValue;}

但是,如果您 确实 想要通过反射进行设置 ,那么 这里有一个完整的示例:

import java.lang.reflect.*;class FieldContainer{    private static String woot;    public static void showWoot()    {        System.out.println(woot);    }}public class Test{    // Declared to throw Exception just for the sake of brevity here    public static void main(String[] args) throws Exception    {        Field field = FieldContainer.class.getDeclaredField("woot");        field.setAccessible(true);        field.set(null, "New value");        FieldContainer.showWoot();    }}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/497685.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号