Java / Android UnknownHostException

时间:2014-12-20 21:56:24

标签: java android

我有以下代码将IP传递给查找国家/地区的某个包。

WebServiceClient client = new WebServiceClient.Builder(42, "license_key").build();
InetAddress ipAddress = InetAddress.getByName("128.101.101.101");
CountryResponse response = client.country(ipAddress);

问题是,这给了我错误:

unreported exception UnknownHostException; must be caught or declared to be thrown

我做错了什么?

1 个答案:

答案 0 :(得分:1)

其中一个函数(至少)将异常声明为throwable。在Java中,必须捕获所有已声明的可抛出异常 - 您不需要在异常处理程序中执行任何操作(尽管至少记录它是一个好主意),但它必须存在,或者调用它的函数还必须将这些异常声明为throwable(然后它的调用者需要捕获它们)。它是Java中的一种机制,称为"检查异常"。很多人不喜欢它们,许多人认为这是一个错误,但使用它的Java库的那些部分可能永远不会改变,所以你必须遵守规则。