美文网首页
Getting and Setting Field Values

Getting and Setting Field Values

作者: 日更专用小马甲 | 来源:发表于2019-04-10 09:25 被阅读0次

    本系列翻译自Oracle官方教程,半翻译,半读后感性质。文末会附上原文链接。

    开篇首先强调可以通过反射来设置字段的值,但不属于常规操作。因为违反了类的设计哲学(如果直接操作private字段,还要getset方法干嘛)。最后再次声明,这种操作需要极其谨慎(utmost discretion)。

    接下来以Book类为例,介绍了如何操作longarrayenum

    最后,再次强调,通过反射来给字段赋值在性能上也不推荐。例如,需要在运行时额外检验字段的访问权限。同时可能会导致一些运行时的优化手段失效。

    int x = 1;
    x = 2;
    x = 3;
    

    这段代码极有可能被JVM优化,但是通过Field.set*()就未必了。

    原文链接:Getting and Setting Field Values

    相关文章

      网友评论

          本文标题:Getting and Setting Field Values

          本文链接:https://www.haomeiwen.com/subject/aiygiqtx.html