黑马程序员技术交流社区

标题: 网络编程和异常抛出的一点问题 [打印本页]

作者: 兜兜转转    时间: 2013-8-17 09:29
标题: 网络编程和异常抛出的一点问题
  1. package com.net;
  2. import java.net.InetAddress;

  3. class InetAddressDemo1
  4. {
  5.         public static void main(String[] args) throws Exception
  6.         {
  7.                    InetAddress i = InetAddress.getByName("www.baidu.com");
  8.                    System.out.println(i);
  9.         }
  10. }
复制代码
上述的代码是可以编译的,但是为什么我在main方法上直接写 throw UnknownHostException  或者 throws UnknownHostException都不编译呢?

作者: gudao20080    时间: 2013-8-17 10:57
我试了一下,你应该是没有导入异常的包,另外,方法上抛异常应该用throws而不是throw
  1. import java.net.InetAddress;
  2. import java.net.UnknownHostException;  //要导入
  3. public class Practise {

  4.                 public static void main(String[] args)  throws UnknownHostException
  5.                 {
  6.                            InetAddress i = InetAddress.getByName("www.baidu.com");
  7.                            System.out.println(i);
  8.                 }
  9.        
  10. }
复制代码

作者: 兜兜转转    时间: 2013-8-17 11:25
gudao20080 发表于 2013-8-17 10:57
我试了一下,你应该是没有导入异常的包,另外,方法上抛异常应该用throws而不是throw ...

哥们,你可以在看看我的代码,我是有导包的,而且throws 和throw 我都试过了,不过我还没看到异常这一块,因为之前在学校是学java,学的很菜,基本玩网游,后来参加工作很多年,没搞java,但是对基础总的基础有点印象,所以我改变学习顺序,先从后往前看的.......

作者: gudao20080    时间: 2013-8-17 12:51
兜兜转转 发表于 2013-8-17 11:25
哥们,你可以在看看我的代码,我是有导包的,而且throws 和throw 我都试过了,不过我还没看到异常这一块 ...

你又没导入异常类的包,系统去哪找你的异常
作者: 兜兜转转    时间: 2013-8-17 13:47
gudao20080 发表于 2013-8-17 12:51
你又没导入异常类的包,系统去哪找你的异常

我试过了没用,大哥,你不信,你自己去导入个包试试看。import java.rmi.UnknownHostException;不就是这个吗?


作者: kmter    时间: 2013-8-17 14:00
getByName(String host)方法不仅会抛出UnknownHostException还会抛出SecurityException, 你只声明抛出一种异常自然不行, throws UnknownHostException, SecurityException即可通过编译
作者: funneies    时间: 2013-8-17 14:26
测试,已通过,可以运行。表示导包问题,是:java.net.UnknownHostException包,而不是:java.rmi.UnknownHostException包
  1. import java.net.InetAddress;
  2. import java.net.UnknownHostException;

  3. public class InetAddressTest {
  4.         public static void main(String[] args) throws UnknownHostException{
  5.                 InetAddress i = InetAddress.getByName("www.baidu.com");
  6.                 System.out.println(i);
  7.         }
  8. }
复制代码
运行结果:
www.baidu.com/61.135.169.105
作者: 兜兜转转    时间: 2013-8-18 00:29
funneies 发表于 2013-8-17 14:26
测试,已通过,可以运行。表示导包问题,是:java.net.UnknownHostException包,而不是:java.rmi.UnknownH ...

哥们,我懂了,还是不细心啊,导错包了。。。。。。thx!





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2