通过一个程序,详细了解了Object类,Integer类,System类,Runtime类

来源:互联网 发布:telnet协议不适用端口 编辑:程序博客网 时间:2024/06/04 20:07

 

package lang_API;
 
/**
 * 本例演示使用Integer类的静态方法,将十进制转化为二进制,十六进制字符串输出,使用Class,Runtime类的方法运行时的
 * 信息,如当前类,父类,包和内存空间使用的情况。
 */
 
public class Runtimeinfo {
         public String getinfo(Object obj)
         {
                   String result ="值为 "+ obj.toString();
                   if(obj instanceof Integer)
                   {       
                            Integer intobj=(Integer)obj;
                            int i=intobj.intValue();
                            result+="   二进制值为"+Integer.toBinaryString(i)+"   十六进制值为 "+Integer.toHexString(i)+"/n";
                   }
                   result+="   操作系统为 "+System.getProperty("os.name")+" java版本为:"+System.getProperty("java.vm.version")+"/n";
                   result+=" 内存总量为 "+Runtime.getRuntime().totalMemory()+" 剩余空间为 "+Runtime.getRuntime().freeMemory()+"/n";
                   return result;
         }
 
 
         public static void main(String[] args) {
                   Runtimeinfo rt=new Runtimeinfo();
                   System.out.println(rt.getinfo(new Integer(123)));
                   System.out.println(rt.getinfo(new String("abc")));
 
         }
 
}
/*
 * 用到的API类
 *      java.lang语言包的: Object类,基本数据类型包装类,System类和Runtime类,下面对这些类进行介绍:
 *    
 *      Object类:    java.lang.Object
 *                                构造方法   public Object()
 *                                常用的方法:
 *                                1> getClass    返回此 Object 的运行时类
 *                                2>public boolean equals(Object obj) 指示其他某个对象是否与此对象“相等”。
 *                                      Object 类的 equals 方法实现对象上差别可能性最大的相等关系;即,对于任何非空引用值 x 和 y,
 *                                      当且仅当 x 和 y 引用同一个对象时,此方法才返回 true(x == y 具有值 true)。
 *                                3>public String toString()   返回该对象的字符串表示它的值等于:
 *                                                    getClass().getName() + '@' + Integer.toHexString(hashCode())
 *      类 Integer:   java.lang.Integer
 *                    Integer 类在对象中包装了一个基本类型 int 的值。Integer 类型的对象包含一个 int 类型的字段。
 *                    此外,该类提供了多个方法,能在 int 类型和 String 类型之间互相转换,还提供了处理 int 类型时非常有用的其他一些常量和方法                                          
 *                    构造方法:
 *                           1>public Integer(int value)构造一个新分配的 Integer 对象,它表示指定的 int 值
 *                           2>public Integer(String s) throws NumberFormatException 构造一个新分配的 Integer 对象,它表示 String
 *                                    参数所指示的 int 值。使用与 parseInt 方法(对基数为 10 的值)相同的方式将该字符串转换成 int 值。
 *                    常用方法:
 *                    1>public static String toHexString(int i) 以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式
 *                                    Integer.toHexString(n).toUpperCase()   到大写字母
 *                    2>public static String toOctalString(int i)以八进制(基数 8)无符号整数形式返回一个整数参数的字符串表示形式
 *                    3>public static String toBinaryString(int i) 以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式
 *                    4>public static String toString(int i) 返回一个表示指定整数的 String 对象
 *                                          返回一个表示指定整数的 String 对象。将该参数转换为有符号的十进制表示形式,以字符串形式返回它,
 *                                          就好像将参数和基数 10 作为参数赋予 toString(int, int) 方法。
 *                    5>parseInt public static int parseInt(String s,int radix) throws NumberFormatException   
 *                                使用第二个参数指定的基数,将字符串参数解析为有符号的整数。除了第一个字符可以是用来表示负值的 ASCII 减号 '-' ('/u002D’)外,
 *                                字符串中的字符必须都是指定基数的数字(通过 Character.digit(char, int) 是否返回一个负值确定)。返回得到的整数值。
 *                                如果发生以下任意一种情况,则抛出一个 NumberFormatException 类型的异常:
 *                                        a.第一个参数为 null 或一个长度为零的字符串。
 *                                        b.基数小于 Character.MIN_RADIX 或者大于 Character.MAX_RADIX。
 *                                        c.假如字符串的长度超过 1,那么除了第一个字符可以是减号 '-' ('u002D’) 外,字符串中存在任意不是由指定基数的数字表示的字符。
 *                                        d.字符串表示的值不是 int 类型的值。     
 *                    6>public static int parseInt(String s)将字符串参数作为有符号的十进制整数进行解析
 *                    7>public static Integer valueOf(String s,int radix) throws NumberFormatException
 *                                        该方法返回一个等于以下值的 Integer 对象:new Integer(Integer.parseInt(s, radix))    
 *                    8>public static Integer valueOf(String s) throws NumberFormatException
 *                                        该方法返回一个等于以下值的 Integer 对象:new Integer(Integer.parseInt(s))
 *                    9>public static Integer valueOf(int i) 返回一个表示指定的 int 值的 Integer 实例
 *                                        如果不需要新的 Integer 实例,则通常应优先使用该方法,而不是构造方法 Integer(int),
 *                                        因为该方法有可能通过缓存经常请求的值而显著提高空间和时间性能。                   
 *                    10>public byte byteValue()      返回:转换为 byte 类型后该对象表示的数值   以 byte 类型返回该 Integer 的值
 *                    11>public short shortValue()    以 short 类型返回该 Integer 的值
 *                    12>public int intValue()        以 int 类型返回该 Integer 的值
 *                    13>public long longValue()      以 long 类型返回该 Integer 的值
 *                    14>public float floatValue()    以 float 类型返回该 Integer 的值
 *                    15>public double doubleValue() 以 double 类型返回该 Integer 的值
 *                    16>public String toString()     该对象的值(基数 10)的字符串表示形式
 *                    17>public static Integer getInteger(String nm)   确定具有指定名称的系统属性的整数值
 *                    18>public int compareTo(Integer anotherInteger) 在数字上比较两个 Integer 对象
 *       类 Runtime: java.lang.Runtime               public class Runtimeextends Object   应用程序不能创建自己的 Runtime 类实例
 *                    常用的方法:
 *                    1〉public static Runtime getRuntime()返回与当前 Java 应用程序相关的运行时对象。Runtime 类的大多数方法是实例方法,
 *                                                         并且必须根据当前的运行时对象对其进行调用。
 *                    2〉public void exit(int status)通过启动虚拟机的关闭序列,终止当前正在运行的 Java 虚拟机。
 *                                                   System.exit 方法是调用此方法的一种传统而便捷的方式。
 *                    3〉public long totalMemory()         返回 Java 虚拟机中的内存总量。此方法返回的值可能随时间的推移而变化,这取决于主机环境。
 *                    4〉public long freeMemory()          返回 Java 虚拟机中的空闲内存量。调用 gc 方法可能导致 freeMemory 返回值的增加
 *                    5>public int availableProcessors()   向 Java 虚拟机返回可用处理器的数目
 *                    6>public long maxMemory() 返回 Java 虚拟机试图使用的最大内存量。如果内存本身没有限制,则返回值 Long.MAX_VALUE,以字节为单位                        
 *                    7>public void gc() 运行垃圾回收器。调用此方法意味着 Java 虚拟机做了一些努力来回收未用对象,以便能够快速地重用这些对象当前占用的内存。
 *                                         当控制从方法调用中返回时,虚拟机已经尽最大努力回收了所有丢弃的对象。
 *                    8>public void load(String filename)加载作为动态库的指定文件名。文件名变量必须是一个完整的路径名,
 *                                                       (例如 Runtime.getRuntime().load("/home/avh/lib/libX11.so");)。
 *      类 System:    java.lang.System  System 类包含一些有用的类字段和方法。它不能被实例化。
 *                    1>public static void setSecurityManager(SecurityManager s)设置系统安全性
 *                    2>public static SecurityManager getSecurityManager()获取系统安全接口。
 *                    3>public static long currentTimeMillis()返回以毫秒为单位的当前时间。当前时间与协调世界时 1970 年 1 月 1 日午夜之间的时间差(以毫秒为单位测量)。
 *                    4>public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
 *                                  从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。
 *                    5>public static Properties getProperties()确定当前的系统属性。
 *                    6>public static void setProperties(Properties props) 将系统属性设置为 Properties 参数       
 *                    7>public static String getProperty(String key,String def)    获取用指定键描述的系统属性。
 *                                                                            相关值的描述
                                   java.version Java                      运行时环境版本
                                   java.vendor Java                       运行时环境供应商
                                   java.vendor.url Java                   供应商的 URL
                                   java.home Java                         安装目录
                                   java.vm.specification.version          Java 虚拟机规范版本
                                   java.vm.specification.vendor           Java 虚拟机规范供应商
                                   java.vm.specification.name             Java 虚拟机规范名称
                                   java.vm.version                        Java 虚拟机实现版本
                                   java.vm.vendor                         Java 虚拟机实现供应商
                                   java.vm.name                           Java 虚拟机实现名称
                                   java.specification.version             Java 运行时环境规范版本
                                   java.specification.vendor              Java 运行时环境规范供应商
                                   java.specification.name                Java 运行时环境规范名称
                                   java.class.version                     Java 类格式版本号
                                   java.class.path                        Java 类路径
                                   java.library.path                      加载库时搜索的路径列表
                                   java.io.tmpdir                         默认的临时文件路径
                                   java.compiler                          要使用的 JIT 编译器的名称
                                   java.ext.dirs                          一个或多个扩展目录的路径
                                   os.name                                操作系统的名称
                                   os.arch                                操作系统的架构
                                   os.version                             操作系统的版本
                                   file.separator                         文件分隔符(在 UNIX 系统中是“/”)
                                   path.separator                         路径分隔符(在 UNIX 系统中是“:”)
                                   line.separator                         行分隔符(在 UNIX 系统中是“/n”)
                                   user.name                              用户的账户名称
                                   user.home                              用户的主目录
                                   user.dir                               用户的当前工作目录
 
 *                   8>public static String setProperty(String key,String value)设置指定键指示的系统属性
 *                   9>public static String getProperty(String key)获取指定键指示的系统属性
 *                   10>public static void runFinalization()运行处于挂起终止状态的所有对象的终止方法
 *                   11>public static void load(String filename)从作为动态库的本地文件系统中以指定的文件名加载代码文件。文件名参数必须是完整的路径名
 *                   12>public static void loadLibrary(String libname)加载由 libname 参数指定的系统库。将库名映射到实际系统库的方法取决于系统
*/
原创粉丝点击