当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Field getLong()用法及代码示例


java.lang.reflect.Field的getLong()方法用于获取long的值,该值必须为静态或实例字段类型。此方法还用于获取另一个原始类型的值,该类型可以通过扩展转换转换为long类型。当一个类包含一个静态或实例长字段,而我们想获取该字段的值时,则可以使用此方法返回Field的值。

用法:

public long getLong(Object obj)
             throws IllegalArgumentException,
                    IllegalAccessException

参数:此方法接受单个参数obj,这是从中提取long值的对象。


返回值:此方法返回转换为long类型的字段的值。

异常:此方法引发以下异常:

  1. IllegalAccessException:如果Field对象正在强制执行Java语言访问控制,并且基础字段不可访问。
  2. IllegalArgumentException:如果指定的对象不是声明基础字段的类或接口的实例,或者如果字段值不能通过扩展转换长时间转换为类型,则为false。
  3. NullPointerException :如果指定的对象为null并且该字段是实例字段。
  4. ExceptionInInitializerError:如果此方法引发的初始化失败。

以下示例程序旨在说明getLong()方法:
示例1:

// Java program to demonstrate getLong() method 
  
import java.lang.reflect.Field; 
  
public class GFG { 
  
    public static void main(String[] args) 
        throws Exception 
    { 
  
        // Create the User class object 
        User user = new User(); 
  
        // Get the marks field object 
        Field field 
            = User.class.getField("HighScore"); 
  
        // Apply getLong Method on User Object 
        // to get the value of HighScore field 
        long value = field.getLong(user); 
  
        // print result 
        System.out.println("Value of long Field"
                           + " HighScore is " + value); 
    } 
} 
  
// sample User class 
class User { 
  
    // static long values 
    public static long HighScore = 341313432299133L; 
    public static String name = "Aman"; 
  
    public static long getHighScore() 
    { 
        return HighScore; 
    } 
  
    public static void setHighScore(long HighScore) 
    { 
        User.HighScore = HighScore; 
    } 
  
    public static String getName() 
    { 
        return name; 
    } 
  
    public static void setName(String name) 
    { 
        User.name = name; 
    } 
}
输出:
Value of long Field HighScore is 341313432299133

示例2:

// Java program to demonstrate getLong() method 
  
import java.lang.reflect.Field; 
  
public class GFG { 
  
    public static void main(String[] args) 
        throws Exception 
    { 
  
        // Create the Numbers class object 
        Numbers numbers = new Numbers(); 
  
        // Get the value field object 
        Field field 
            = Numbers.class.getField("value"); 
  
        // Apply getLong Method on field Object 
        // to get the value of value field 
        long value = field.getLong(numbers); 
  
        // print result 
        System.out.println("Value: " + value); 
    } 
  
    // Numbers class 
    static class Numbers { 
  
        // long field 
        public static long value = 9999994567L; 
  
        // getter and setter methods 
        public static long getValue() 
        { 
            return value; 
        } 
  
        public static void setValue(long value) 
        { 
            Numbers.value = value; 
        } 
    } 
}
输出:
Value: 9999994567

参考文献: https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Field.html#getLong-java.lang.Object-



相关用法


注:本文由纯净天空筛选整理自AmanSingh2210大神的英文原创作品 Field getLong() method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。