「获取对象类型java」获取对象属性

博主:adminadmin 2022-12-22 22:51:06 64

本篇文章给大家谈谈获取对象类型java,以及获取对象属性对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

如何获取 java 的泛型中的对象类型

获取java泛型中的对象类型,可以参考如下代码:

/**

* 通过反射取到 ListT 中 T 的类型

* @param clazz

* @param field

* @return

*/

public static Class? extends Object getGenericType(Class? extends Object clazz, Field field){

Method getMethod = getGetMethodByField(clazz,field);

ParameterizedType pt= (ParameterizedType)getMethod.getGenericReturnType(); 

        Class? extends Object type = (Class?)pt.getActualTypeArguments()[0];

        //System.out.println(type.getSimpleName());

        //System.out.println(type.getPackage());

        return type;

}

java 获取对象的数据类型的方法

使用getClass方法可以获取一个对象的类型类,然后在调用该类的方法可以获取该类的相关信息,比如父类的名字,该类的名字等等:

package test;

import java.lang.reflect.Field;

import java.lang.reflect.Method;

public class Demo2 {

String username = "sss";

public static void main(String[] args) throws IllegalArgumentException, IllegalAccessException, NoSuchFieldException, SecurityException, NoSuchMethodException {

Demo2 t = new Demo2();

if (Demo2.class == t.getClass()) {

System.out.println("equal");

}

// 获取类名

System.out.println(t.getClass().getName());

// 获取父类名

System.out.println(t.getClass().getSuperclass());

//获取类中某个属性

Field f = t.getClass().getField("username");

//获取类中某个方法

Method m = t.getClass().getDeclaredMethod("main", String[].class);

}

java怎样获得一个对象的类型

java中获取一个对象可以使用单例模式,实例如下:

Class A:

public class A {

 

 public void SayHello() {

  System.out.println("Say Hello From Class A");

 }

 public static A getInstanceOfA() {

  return new A();//A类中A的实例变量

 }

 private A(){}

}

Class B:

public class B {

 public static void main(String[] args) {

 A a = A.getInstanceOfA();//返回的是A类中的A的实例变量

  a.SayHello();//调用A中的SayHello方法

 }

}

JAVA语言 获得对象类型

如题:

如果是使用 判断来验证的话 可以 使用

instanceof 关键字来做比较。

在java中 instanceof 归类为 比较运算符(特殊的)

是用来 判断 某个 对象 是否是某个类的实例(所谓的实例 就是指,这个对象 是 由 这个类 或这个类的子类 new 出来的)

如: 你自己定义了一个类 Person类,而你用这个类new(创建) 了一个对象p ( Person p=new Person() ) ,则 这个 时候 boolean flag=p instanceof Person ;

的结果是 true;

注意 instanceof 左边的事对象,右边的事类名。

instanceof 关键字 的用法 基础的就是这样。

当然 如果 你比较的对象 不是 这个类 的实例,则结果当然是false了。

当时,此时 要注意了。

java中的类是可继承的。(在涉及到继承时候 用instanceof 就有意思了,要注意这里的情况)

如:

你写了 一个类 Student 继承了Person 类。

就像这样 class Student extends Person

那么 这个时候

Student 类的实例 如:Student stu=new Student();

此时 如果 你使用 stu instanceof Student ,那么 ,结果 当如是true的。

是吧?这个不会 有疑问吧? 有疑问 的话, 下面的就没法看了。

接着,再看这个:

Student stu1=new Student();

boolean result=stu1 instanceof Person;

那么 result 的结果 是true 还是 false呢?

结果是 true;

这 就是 在继承结构下,instanceof 要注意的地方。

我们 可以这样理解

Person p1=new Person();

p1 instanceof Person ---true ==人(p1)是(Person)人类的 实例

Student stu2=new Student();

stu2 instanceof Student;----true; ==学生(stu2)是学生类(Student)的实例

stu2 instanceof Person ---true ==学生也是人(继承结构)

补充 :

写的,不正确了。

应该写成

if(某变量 instanceof Integer){

//do some..

}else if(某某变量 instanceof Float){

//do some

}

Integer 是int的包装类

Float 是float的包装类

不知 是不是你想要的答案。

关于获取对象类型java和获取对象属性的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-22,除非注明,否则均为首码项目网原创文章,转载请注明出处。