gpt4 book ai didi

java - 访问资源文件时代码位置的优点/缺点

转载 作者:行者123 更新时间:2023-12-01 09:16:13 30 4
gpt4 key购买 nike

以下是我在访问资源文件时看到的 3 个选项。由于可能存在异常(exception)情况,选项 1 可能是最不推荐的,因此问题实际上与选项 2 或选项 3 相关,即哪个是首选或推荐的实现。

选项 1 - 在属性区域中完成。非常通用。不捕获潜在的异常。

class MyClass 
{
static ResourceBundle bundle = Resource.getBundle("MyFile");
float value1 = Float.parseFloat(bundle.getString("myValue1"));
float value2 = Float.parseFloat(bundle.getString("myValue2"));
}

选项 2 - 访问构造函数内的资源。由于这些值不是动态的,因此每次实例化该类时都访问它们似乎是一种浪费,因为此类是频繁使用的项目。

class MyClass 
{
static ResourceBundle bundle = Resource.getBundle("MyFile");
float value1;
float value2;

public MyClass()
{
try
{
value1; = Float.parseFloat(bundle.getString("myValue1"));
value2 = Float.parseFloat(bundle.getString("myValue2"));
}catch(Exception e)
{
//Do something
}
}
}

选项 3 - 类的属性部分中的代码。我喜欢这个,因为如果类已经在内存中,它只会被访问一次,但由于所有属性往往都位于类的顶部,因此它确实使代码看起来充满了 try/catch 和额外的代码。

class MyClass 
{
static ResourceBundle bundle = Resource.getBundle("MyFile");
float value1;
float value2;
{
try
{
value1; = Float.parseFloat(bundle.getString("myValue1"));
value2 = Float.parseFloat(bundle.getString("myValue2"));
}catch(Exception e)
{
//Do something
}
}
}

这似乎更像是一个偏好问题,因为即使有 20-30 个资源被访问,我也不认为开销差异是可测量的。

最佳答案

您的选项 2 和 3 生成相同的字节码。所以差异只是审美上的。

关于java - 访问资源文件时代码位置的优点/缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40528287/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com