InetAddress 对象的实例方法

import java.net.Inet4Address;
import java.net.Inet6Address;
import java.net.InetAddress;
import java.net.UnknownHostException;

public class InetAddressMethod {

    public static void main(String[] args) {

        InetAddressMethod inetaddr = new InetAddressMethod();
        inetaddr._getHostAddress();
        inetaddr._getAddress("www.csdn.net");

        InetAddressMethod._getIpType("00::01");
    }

    public void _getHostAddress() {

        InetAddress ipv4Address1 = null;
        try {
            ipv4Address1 = InetAddress.getByName("1.2.3.4");
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }

        System.out.println(ipv4Address1);
        System.out.println(ipv4Address1.getHostAddress());
    }

    public void _getAddress(String hostname) {

        InetAddress address = null;
        try {
            address = InetAddress.getByName(hostname);
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }

        byte[] ip = address.getAddress();
        for(byte ipSegment : ip) {
            System.out.print(ipSegment + ".");
        }
        System.out.println("");

        for(byte ipSegment : ip) {
            int newIPSegment = (ipSegment < 0) ? (256 + ipSegment) : ipSegment;
            System.out.print(newIPSegment + ".");
        }
    }

    public static void _getIpType(String hostname) {

        InetAddress address = null;
        try {
            address = InetAddress.getByName(hostname);
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
        System.out.println(address.getHostAddress());

        switch(address.getAddress().length)
        {
            case 4:
                System.out.println("ipv4 address!");
                break;
            case 16:
                System.out.println("ipv6 address!");
                break;
        }

        if(address instanceof Inet4Address) {
            System.out.println("ipv4 address!");
        }
        if(address instanceof Inet6Address) {
            System.out.println("ipv6 address!");
        }
    }
}
时间: 2024-08-01 09:11:14

InetAddress 对象的实例方法的相关文章

Java网络编程从入门到精通(2):创建InetAddress对象的四个静态方法

InetAddress类是Java中用于描述IP地址的类.它在java.net包中.在Java中分别用Inet4Address和Inet6Address类来描述IPv4和IPv6的地址.这两个类都是InetAddress的子类.由于InetAddress没有public的构造方法,因此,要想创建InetAddress对象,必须得依靠它的四个静态方法.InetAddress可以通过getLocalHost方法得到本机的InetAddress对象,也可以通过getByName.getAllByNam

InetAddress类之创建新的InetAddress对象

java.net.InetAddress类是Java对IP地址(包括IPv4和IPv6)的高层表示.大多数其他网络类都要用到这个类,包括Socket,ServerSocket,URL,DatagramSocket,DatagramPacket等.一般地讲,它包括一个主机名和一个IP地址. 创建新的InetAddress对象 InetAddress类没有公共构造函数.实际上,InetAddress有一些静态工厂方法,可以连接到DNS服务器来解析主机名.最常用的是InetAddress.getByN

InetAddress对象的获取方式

简单总结一下InetAddress对象产生的几种方式 代码 package com.demo; import java.net.InetAddress; import java.net.UnknownHostException; /** * * @author Lynn * 1.getByName()和getByAddress()方法的使用: * 2.getLocalHost()方法: * 3.getLoopbackAddress()方法: * 4.注意第三种方式和第四种方式: * */ pub

创建 InetAddress 对象的四个静态方法

package InetAddressClass; import java.net.InetAddress; import java.net.UnknownHostException; public class InetAddressStaticMethod { public static void main(String[] args) { InetAddressStaticMethod._getLocalHost(); InetAddressStaticMethod._getByName("

316 FormData 对象的实例方法

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <!-- 创建普通的html表单 --> <form id="form"> <input type="text

java 网络编程-得到ip对象InetAddress的三种方式

网络编程:跟服务器底层源码有关B/S在公网上(浏览器访问)服务器端和客户端只写一端,c/s在局域网上(网吧)服务器端和客户端都要写,B/S是大大的C/S协议:端口之间的交流更畅通,不同软件有各自的端口tcp/udp/http ip:定位一个节点使用静态方法getLocalHost方法创建InetAddress对象,InetAddress没有构造器InetAddress addr = InetAddress.getLocalHost();addr.getHostAddress() 本机地址addr

InetAddress问题

InetAddress的方法 当输入InetAddress.getByAddress(new byte[]{127.0.0.1})的时候不会报错, 但是ip的各段值是0-255,当new byte[]{118.244.0.1}的时候就会报错,byte的范围是-127~128之间 可以通过方法 进行获取InetAddress对象

【学习ios之路:Object-C】类与对象

1.面向对象和面向过程概念 1).面向过程 面向过程:以过程为核心,注重的是完成事件的详细步骤,一步一步如何实现. 2).面向对象 面向对象:以事物为核心,注重的是参与该事件的事物应该具备的功能.所以完成该事件只是事物所有功能中的一个功能. 2.类与对象 类: 类是具有相同特征以及行为的事物的抽象,它是一个抽象的概念,不具体. 对象: 类的实例.类的具体体现.生活中的万物都是对象. 3.OO与OOP OO:(Object Oritented)面向对象 OOP:(Object Oriented P

runtime 01-类与对象

关于“runtime机制”的问题,要深入理解runtime,首先要从最基本的类与对象开始,本文将详细讲解OC中类与对象的结构层次,后续将逐渐更新如何利用runtime操作类.首先,我们从/usr/include/objc/objc.h 和 runtime.h 中找到对 class 与 object 的定义: 1 // An opaque type that represents an Objective-C class. 2 typedef struct objc_class *Class; 3