来看Java收集编程从进门到精晓(5):利用InetAddress类的getHostName办法取得域 ...
还是要自己一点一点写代码,然后编译,改错再编译好那。还有最重要的是.net网页编程的编译环境非常好,你甚是不需要了解太多工具,对于简单的系统,你可以之了解一些语法就哦了。该办法能够失掉远程主机的域名,也能够失掉本机名。getHostName办法的界说以下:
publicStringgetHostName()
上面是三种创立InetAddress对象的体例,在这三种体例中,getHostName前往的值是分歧的。
1.利用getLocalHost办法创立InetAddress对象
假如InetAddress对象是用getLocalHost办法创立的,getHostName前往的是本机名。以下面的代码所示:
InetAddressaddress=InetAddress.getLocalHost();
System.out.println(address.getHostName()); //输入本机名
2.利用域名创立InetAddress对象
用域名作为getByName和getAllByName办法的参数挪用这两个办法后,体系会主动记着这个域名。当挪用getHostName办法时,就无需再会见DNS服务器,而是间接将这个域名前往。以下面的代码所示:
InetAddressaddress=InetAddress.getByName("www.ckuyun.com");
System.out.println(address.getHostName()); //无需会见DNS服务器,间接前往域名
3.利用IP地点创立InetAddress对象
利用IP地点创立InetAddress对象时(getByName、getAllByName和getByAddress办法都能够经由过程IP地点创立InetAddress对象),其实不必要会见DNS服务器。因而,经由过程DNS服务器查找域名的事情就由getHostName办法来完成。假如这个IP地点不存在或DNS服务器不同意举行IP地点和域名的映照,getHostName办法就间接前往这个IP地点。以下面的代码所示:
InetAddressaddress=InetAddress.getByName("141.146.8.66");
System.out.println(address.getHostName()); //必要会见DNS服务器才干失掉域名
InetAddressaddress=InetAddress.getByName("1.2.3.4"); //IP地点不存在
System.out.println(address.getHostName()); //间接前往IP地点
从下面的三种情形能够看出,只要经由过程利用IP地点创立的InetAddress对象挪用getHostName办法时才会见DNS服务器。在其他情形,getHostName办法其实不会会见DNS服务器,而是间接将域名或本机名前往。上面的代码演示了在分歧情形下怎样利用getHostName办法,并盘算了各类情形所需的毫秒数。
packagemynet;
importjava.net.*;
publicclassDomainName
{
publicstaticvoidmain(String[]args)throwsException
{
longtime=0;
//失掉本机名
InetAddressaddress1=InetAddress.getLocalHost();
System.out.println("本机名:"+address1.getHostName());
//间接前往域名
InetAddressaddress2=InetAddress.getByName("www.ckuyun.com");
time=System.currentTimeMillis();
System.out.print("间接失掉域名:"+address2.getHostName());
System.out.println(" 所用工夫:"
+String.valueOf(System.currentTimeMillis()-time)+"毫秒");
//经由过程DNS查找域名
InetAddressaddress3=InetAddress.getByName("141.146.8.66");
System.out.println("address3: "+address3); //域名为空
time=System.currentTimeMillis();
System.out.print("经由过程DNS查找域名:"+address3.getHostName());
System.out.println(" 所用工夫:"+String.valueOf(System.currentTimeMillis()-time)+"毫秒");
System.out.println("address3: "+address3); //同时输入域名和IP地点
}
}
运转了局:
本机名:ComputerName
间接失掉域名:www.ckuyun.com 所用工夫:0毫秒
address3: /141.146.8.66
经由过程DNS查找域名:bigip-otn-portal.oracle.com 所用工夫:92毫秒
address3: bigip-otn-portal.oracle.com/141.146.8.66
从下面的运转了局能够看出,第一个毫秒数是0,而第二个毫秒数是92。这说时,利用域名创立的InetAddress对象在利用getHostName办法时其实不会见DNS服务器,而利用IP地点创立的InetAddress对象在利用getHostName办法时必要会见DNS服务器。关于第三个毫秒数,大概屡次运转DomainName后会愈来愈小,这是由于DNS服务器的缓存的原因。但一样平常这个数城市比0年夜。大概有良多人会问,第二行和第四行失掉的域名怎样纷歧样,实在www.ckuyun.com和bigip-otn-portal.oracle.com都是oracle的域名,我们也能够经由过程http://bigip-otn-portal.oracle.com来会见oracle的官方网站。至于这两个域名有甚么区分,将鄙人面的文章中会商。
J2ME在手机游戏开发的作用也是无用质疑的。至于桌面程序,可能有人说java不行,界面不好看,但是请看看net网页编程Beans和Eclipse吧,他们都是利用java开发的,而他们的界面是多么的华丽,所以界面决不是java的缺点。还有一个不得不提的优点就是大多java人员都挂在嘴边的java的跨平台性,目前这确实也是java优点之一。 是一种为 Internet发展的计算机语言 有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想) 一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。 如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。 《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。 关于设计模式的资料,还是向大家推荐banq的网站 http://www.jdon.com/,他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。 一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从 Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading) 学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。 是一种突破用户端机器环境和CPU 如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
页:
[1]