"get"VS"getProperty"之间的区别

bou*_*ppo 17 java properties-file

Properties myProp = new Properties();
myProp.put("material", "steel");

Properties prop1 = new Properties(myProp);

System.out.println(prop1.get("material") + ", " + prop1.getProperty("material"));
// outputs "null, steel"
Run Code Online (Sandbox Code Playgroud)

在它返回Object的条目/属性的意义上,是否与getProperty类似?使用get时为什么不返回'steel'?

Jon*_*eet 22

get继承自Hashtable,并声明返回Object.

getProperty由...引入Properties,并宣布返回String.

请注意,getProperty将参考"defaults"属性,您可以将其传递给构造函数Properties; get惯于.在大多数情况下,它们会返回相同的值.在你给的例子中,你正在使用默认的后盾属性:

  • prop1直接包含条目"material",因此为什么get返回null.
  • myProp 确实包含一个条目"material",所以当你打电话时prop1.getProperty("material"),它会发现它没有直接输入,myProp而是检入,然后找到"steel"它.