java中一个类中没有公共的构造方法,则说明不能让外界去new对象。
java中一个类中没有公共的构造方法,则说明不能让外界去new对象。
* java中一个类中没有公共的构造方法,则说明不能让外界去new对象。
* 有以下几种情况:
* A:成员全部是静态的(如:Math类,Arrays数组工具类,Collections集合工具类)
* B:单例设计模式(如:Runtime运行时类)
* C:类中有静态方法返回该类的对象(如:InetAddress)
* 示例:
* class Demo {
* private Demo(){} // 有私有构造方法,没有公有构造方法
*
* public static Demo getXxx() {
* return new Demo(); // 返回该类对象
* }
* }
注意:ToolKit抽象工具包类,有公共构造方法,但是该抽象类中也有静态方法返回该抽象类的子类对象。如下: * Toolkit抽象类的方法:该类中有静态方法返回该抽象类的子类对象 * public static Toolkit getDefaultToolkit() 获取默认工具包,返回值是Toolkit类的子类对象 // 获取工具包类对象 Toolkit tk = Toolkit.getDefaultToolkit();
示例代码如下:
1 package cn.itcast_01; 2 3 import java.net.InetAddress; 4 import java.net.UnknownHostException; 5 6 /* 7 * 8 * 看InetAddress类的成员方法: 9 * public static InetAddress getByName(String host) 根据主机名或者IP地址的字符串表示得到IP地址对象 10 */ 11 public class InetAddressDemo { 12 public static void main(String[] args) throws UnknownHostException { 13 // public static InetAddress getByName(String host) 14 // InetAddress address = InetAddress.getByName("DESKTOP-TEE3ASS"); 15 InetAddress address = InetAddress.getByName("192.168.1.102"); 16 17 // 通过IP地址对象获取:主机名、IP地址 18 // InetAddress类的成员方法:public String getHostName() 获取主机名 19 String name = address.getHostName(); 20 // InetAddress类的成员方法:public String getHostAddress() 获取IP地址 21 String ip = address.getHostAddress(); 22 System.out.println(name + "---" + ip); 23 } 24 }
Copyright ©2018-2019
【转载文章务必保留出处和署名,谢谢!】
【转载文章务必保留出处和署名,谢谢!】