反射机制获取Class对象的三种方式

1、通过getClass()方法:(通过对象)

Class c1 = obj.getClass();

2、通过对象实例方法获取对象:(通过对象)

Class c2= obj.class;

3、类的全路径:(通过类名)

Class c3 = Class.forName("package.className");

原文地址:https://www.cnblogs.com/Peter-Yu/p/9108724.html

时间: 2024-10-12 09:39:23

反射机制获取Class对象的三种方式的相关文章

反射机制获取Class对象的三种方式:

Person person = new Person(); //1.通过Object类的getClass()方法:(需要先实例化一个对象) Class clazz1 = person.getClass(); //2.通过对象实例方法获取对象:(需要先实例化一个对象) Class clazz2 = person.class; //3.类的全路径:(不许呀实例对象) Class clazz3 = Class.forName("com.cn.Person"); 对于有空的构造函数的类可以直接

Java反射机制(创建Class对象的三种方式)

1:SUN提供的反射机制的类: java.lang.Class<T> java.lang.reflect.Constructor<T> java.lang.reflect.Field java.lang.reflect.Method java.lang.reflect.Modifier 2:什么是反射 JAVA反射机制是在运行状态中,对于任意一个类.都能都知道这个类的所有属性和方法,对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称

Java反射获取class对象的三种方式,反射创建对象的两种方式

Java反射获取class对象的三种方式,反射创建对象的两种方式 1.获取Class对象 在 Java API 中,提供了获取 Class 类对象的三种方法: 第一种,使用 Class.forName 静态方法. 前提:已明确类的全路径名. 第二种,使用 .class 方法. 说明:仅适合在编译前就已经明确要操作的 Class 第三种,使用类对象的 getClass() 方法. 适合有对象示例的情况下 package com.reflection; /** * Created by Liuxd

java webservice服务器端获取request对象的三种方式

有的时候在webservice里我们需要获取request对象和response对象,比如想要获得客户端的访问ip的时候就需要这么做,下面说三种方式,当然三种方式可能是针对不同方式部署webservice获取request对象的方法. 第一种:先配置注入: @Resource private WebServiceContext webServiceContext; 其次是下面的代码: MessageContext mc = webServiceContext.getMessageContext(

反射获取Class对象的三种方式

import cn.qujianlei.domain.Person; public class ReflectDemo { public static void main(String[] args) throws ClassNotFoundException { /* * * 反射技术:动态的获取类以及类中的成员,并可以调用该类的成员. * 以前有什么类就new什么对象. * 现在没有类,给什么类就new什么对象. * * * 反射技术的出现提高了程序的扩展性 * 反射技术中最重要的一点:先获

获取Class对象的三种方式

1:通过每个对象都具备的方法getClass来获取.弊端:必须要创建该类对象,才可以调用getClass方法. 2:每一个数据类型(基本数据类型和引用数据类型)都有一个静态的属性class.弊端:必须要先明确该类. 前两种方式不利于程序的扩展,因为都需要在程序使用具体的类来完成. 3:使用的Class类中的方法,静态的forName方法. 指定什么类名,就获取什么类字节码文件对象,这种方式的扩展性最强,只要将类名的字符串传入即可. // 1. 根据给定的类名来获得  用于类加载 String c

java 反射 获取Class对象的三种方式

String str="hello world"; //方式一 :通过对象的getClass()方法 Class<?> clazz1 =str.getClass(); //方式二:通过类的class属性 Class<?> clazz2 =String.class; //方式三:通过Class类的静态方法forName(String className) Class<?> clazz3 =Class.forName("java.lang.St

jdbc 获取connection 对象的三种方式

获取数据库连接方法一:驱动实现类 1 //创建mysql的Driver对象 2 Driver driver=new com.mysql.jdbc.Driver(); 3 //jdbc url 定位一个数据库: 4 String url="jdbc:mysql://localhost:3306/jdbcdb"; 5 //用于存储用户名和密码 6 Properties info=new Properties(); 7 info.put("user", "roo

获取class对象的三种方法以及通过Class对象获取某个类中变量,方法,访问成员

public class ReflexAndClass { public static void main(String[] args) throws Exception { /** * 获取Class对象的三种方式 * 1 Object --> getClass(); * 2 任何数据类型(包括基本数据类型)都有一个静态的class属性 * 3 通过Class类的静态方法:forName(String className)(常用) * * * 注意:在运行期间,一个类,只有一个Class对象产