国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Java語言深入:對 java.lang 的研究上

2019-11-18 11:59:05
字體:
來源:轉載
供稿:網友

  正如你所知道的那樣,java.lang被自動導入所有的程序。它所包含的類和接口對所有實際的Java程序都是必要的。它是Java最廣泛使用的包。
  
  java.lang包括了下面這些類:
  
  Boolean Long StrictMath (Java 2,1.3)
  
  Byte Math String
  
  Character Number StringBuffer
  
  Class Object System
  
  ClassLoader Package (Java 2) Thread
  
  Compiler Process >ThreadGroup
  
  Double Runtime ThreadLocal (Java 2)
  
  Float >RuntimePermission (Java 2) Throwable
  
  >InheritableThreadLocal (Java 2) SecurityManager Void
  
  >Integer >Short >
  
  另外還有兩個由Character定義的類:Character.Subset和Character.UnicodeBlock,它們是在Java 2中新增加的。
  
  java.lang也定義了如下的接口:
  
  Cloneable
  
  Comparable
  
  Runnable
  
  其中Comparable接口是在Java 2中新增加的。
  
  java.lang中的幾個類包含了過時的方法,其中的大多數可以追溯到Java 1.0。在Java2中仍然提供了這些方法,用于支持逐漸減少的老程序,而這些方法在新程序中不被推薦使用。大多數的過時方法出現在Java 2之前,因此在這里不討論這些方法。而在Java 2中出現的那些過時的方法將被提及。
  
  Java 2也在java.lang包中增加了幾個新的類和方法,這些新類和方法被說明如下
  
  1、簡單類型包裝器
  
  在本書的第1部分,我們提到因為性能的原因,Java使用簡單的類型,例如整型(int)和字符(char)。這些數據類型不是對象層次結構的組成部分。它們通過值傳遞給方法而不能直接通過引用傳遞。而且,也沒有辦法使兩種方法對整型(int)引用同一實例(same instance)。有時需要對這些簡單的類型建立對象表達式。例如在第15章中討論的僅僅處理對象的枚舉類;假如要將簡單類型存儲到這些類中的一個,需要在類中包裝簡單類型。為了滿足這種需要,Java提供了與每一個簡單類型相應的類。本質上,這些類在類中包裝(wrap)簡單類型。因此,它們通常被稱作類型包裝器(wrappers)。
  
  1.1、 Number
  
  抽象類Number定義了一個由包裝數字類型字節型(byte),短整型(short),整型(int),長整型(long),浮點型(float)和雙精度型(double)的類實現的超類。Number有返回上面不同數字格式的對象值的抽象方法。也就是,doubleValue( )方法返回雙精度(double)值,floatValue( )方法返回浮點(float)值等。這些方法如下:
  
  byte byteValue( )
  
  double doubleValue( )
  
  float floatValue( )
  
  int intValue( )
  
  long longValue( )
  
  short shortValue( )
  
  這些方法的返回值可以被舍入。
  
  Number有6個具體的子類包含了6種數字類型的顯式值:雙精度型(Double),浮點型(Float),字節型(Byte),短整型(Short),整型(Integer)和長整型(Long)。
  
  1.2、 Double和Float
  
  雙精度(Double)和浮點(Float)分別是對類型double和類型float的浮點值的包裝器。浮點(Float)構造函數如下所示:
  
  Float(double num)
  
  Float(float num)
  
  Float(String str) 引發NumberFormatException異常
  
  正如你所看到的,浮點(Float)對象可以由類型float或類型double的值創建。它們也能由浮點數的字符串表達式創建。
  
  雙精度(Double)構造函數如下:
  
  Double(double num)
  
  Double(String str) 引發NumberFormatException異常
  
  雙精度(Double)對象可以被雙精度(double)值或包含了浮點值的字符串創建。
  
  由浮點(Float)定義的方法在表14-1中列出。由雙精度(Double)定義的方法在表14-2中列出。浮點(Float)和雙精度(Double)都定義了下面的常數:
  
  MAX_VALUE 最大正值
  
  MIN_VALUE 最小正值
  
  NaN 非數字
  
  POSITIVE_INFINITY 正無窮
  
  NEGATIVE_INFINITY 負無窮
  
  TYPE 浮點(float)或雙精度(double)的類(Class)對象
  
  表1 由Float定義的方法
  
  方法 描述
  
  byte byteValue() 返回調用對象的值(字節型)
  
  int compareTo(Float f) 將調用對象的數值與f中的數值進行比較,假如兩者相等,返回0。假如調用對象的值小于f的值,則返回負值。假如調用對象的值大于f的值,則返回正值(在Java 2中新增加的)
  
  int compareTo(object obj) 當obj是類Float中的對象時,該方法與compareTo(Float)的功能相同。否則,引發一個ClassCastException異常(在Java 2中新增加的)
  
  double doubleValue() 返回調用對象的值(雙精度型)
  
  boolean equals(Object FloatObj) 假如float調用對象與FloatObj相等,則返回true。否則返回false
  
  static int float ToIntBits(float num) 返回與num相應的與IEEE兼容的單精度位模式
  
  Float floatValue() 返回調用對象的值(浮點型)
  
  int hashCode() 返回調用對象的散列值
  
  static float intBitsToFloat(int num) 返回由num指定的,與IEEE兼容的單精度位模式的等價浮點(float)值
  
  int intValue() 返回整型(int)形式的調用對象值
  
  boolean isInfinite() 假如調用對象包含有無窮大值,則返回true。否則返回false
  
  static boolean isInfinite(float num) 假如num指定了一個無窮大值,則返回true。否則返回false
  
  boolean isNaN() 假如調用對象中包含了非數字值,則返回true。否則返回false
  
  static boolean isNaN(float num) 假如num指定了一個非數字值,則返回true。否則返回false
  
  long longValue() 返回調用對象的值(長整型)
  
  static float parseFloat(String str)  throws NumberFormatException 以10為基數,返回包含在由str指定的字符串中的數字的等價浮點值(在Java 2中新增加的)
  
  short shortValue() 返回調用對象值(短整型)
  
  String toString() 返回調用對象的等價字符串形式
  
  static String to String(float num) 返回由num指定的值的等價字符串
  
  static Float valueOf(String str)  throws NumberForamtException 返回包含了由str中的字符串指定的值的float對象
  
  表2 由Double定義的方法
  
  方法 描述
  
  byte byteValue() 返回調用對象的值(字節型)
  
  int compareTo(Double d) 將調用對象的值與d的數值進行比較。假如這兩個值相等,則返回0。假如調用對象的數值小于d的數值,則返回負值。假如調用對象的數值大于d的數值,則返回正值(在Java 2中新增加的)
  
  Int compareTo(Object obj) 假如obj屬于類Double,其操作與compareTo(Double)相同。否則,引發一個ClassCastException異常(在Java 2中新增加的)
  
  static long doubleToLongBits(double num) 返回與num相應的與IEEE兼容的雙精度位模式
  
  double doubleValue() 返回調用對象的值(雙精度)
  
  boolean equals(Object DoubleObj) 假如double調用對象與DoubleObj相等,則返回true。否則,返回false
  
  float floatValue() 返回調用對象的值(浮點型)
  
  int hashcode() 返回調用對象的散列碼
  
  int intValue() 返回調用對象的值(整型)
  
  boolean isInfinite() 假如調用對象包含了一個無窮大值,則返回true。否則,返回false
  
  static boolean isInfinite(double num) 假如num指定了一個無窮大值,則返回true。否則,返回false
  
  boolean is NaN() 假如調用對象包含了一個非數字值,則返回true。否則,返回false
  
  static boolean isNaN(double num) 假如num指定了一個非數字值,則返回true。否則,返回false
  
  static double longBitsToDouble(long num) 返回由num指定的,與IEEE兼容的雙精度位模式的雙精度(double)等價值
  
  long longValue() 返回調用對象的值(長整型)
  
  static double parseDouble(String str)  throws NumberFormatException 以10為基數,返回包含在由str指定的字符串中的數字的等價雙精度(double)形式(在Java 2中新增加的)
  
  short shortValue() 返回調用對象的值(短整型)
  
  String toString() 返回調用對象的等價字符串形式
  
  Static String toString(double num) 返回由num指定的值的等價字符串形式
  
  Static Double valueOf(String str)  throws NumberFormatException 返回包含了由str中的字符串指定的值的double對象
  
  在下面的例子中創建兩個double對象--一個通過使用雙精度(double)值實現,另一個通過傳遞一個可以被解析為雙精度(double)的字符串來實現。
  
  class DoubleDemo {
  
  public static void main(String args[]) {

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高雄县| 顺昌县| 新兴县| 梁平县| 屯昌县| 鲁甸县| 自治县| 丹棱县| 华坪县| 卢氏县| 金溪县| 聂拉木县| 镇宁| 岐山县| 尉犁县| 百色市| 宜春市| 砚山县| 光山县| 湛江市| 象州县| 上犹县| 沛县| 乐陵市| 宣化县| 武义县| 平乐县| 永川市| 察雅县| 大姚县| 万源市| 四会市| 小金县| 抚顺县| 寿阳县| 泽库县| 绍兴县| 茶陵县| 安溪县| 县级市| 南皮县|