RFR: (jaxp) 8003261 : static field is public but not final
Joe Wang
huizhe.wang at oracle.com
Wed Dec 19 02:21:36 UTC 2012
On 12/18/2012 3:43 PM, David Holmes wrote:
> On 19/12/2012 3:49 AM, Tom Hawtin wrote:
>> Not that it's particularly important, but it's /possible/ clients are
>> relying on the non-compile time constant nature of this field causing it
>> not to be inlined into client class files, rather than the ability to
>> switch the version string. So it may be a good idea to add the final,
>> but make it a non-compile time constant. We can also remove the
>> duplication.
>
> I think that is an excellent point Tom. We should avoid turning the
> static field into a compile-time constant.
>
> And get rid of the unnecessary fImmutableVersion which everyone keeps
> overlooking.
With the following change, at least there's no duplicate literal version
strings anymore. Or did you mean we should get rid of
fImmutableVersionand have getVresion return a liberal string?
Joe
>
> David
>
>>
>> public static final String fVersion = getVersion();
>>
>> Tom
>>
>> On 18/12/2012 08:47, Joe Wang wrote:
>>> Hi,
>>>
>>> This is the 2nd of the three [findbug] issues. The field fVersion is
>>> simply made final.
>>>
>>> webrev:
>>> http://cr.openjdk.java.net/~joehw/jdk8/8003261/webrev/
>>>
>>> Test:
>>> No new test needed.
>>>
>>> Thanks,
>>> Joe
>>
More information about the core-libs-dev
mailing list