java获取变量类型_Java中怎么知道一个变量的类型?

展开全部

通过java的反射机制获取。

在类加载的时候,jvm会创建一个class对象。class对象是可以说是反射中最常用的,获取class对象的方636f707962616964757a686964616f31333366306435式的主要有三种:

1、根据类名:类名.class。

2、根据对象:对象.getClass()。

3、根据全限定类名:Class.forName(全限定类名)。

创建一个测试代码如下:

0ad3f18dc9663b523514db646a911104.png

console结果:

3b42af1559e783202634d8b855d6e8fd.png

扩展资料:

java反射机制的更多应用场合:

在Java程序中许多对象在运行是都会出现两种类型:编译时类型和运行时类型。 编译时的类型由声明对象时实用的类型来决定,运行时的类型由实际赋值给对象的类型决定。

例如:Person p=new Student();

其中编译时类型为Person,运行时类型为Student。

除此之外,程序在运行时还可能接收到外部传入的对象,该对象的编译时类型为Object,但是程序有需要调用该对象的运行时类型的方法。

为了解决这些问题,程序需要在运行时发现对象和类的真实信息。然而,如果编译时根本无法预知该对象和类属于哪些类,程序只能依靠运行时信息来发现该对象和类的真实信息,此时就必须使用到反射机制。

参考资料:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值