反射Reflection

配合注解使用会格外强大,反射注解,天生一对

类如何加载?

动态语言和静态语言。我知道是什么,不用总结了。

由于反射,Java可以称为准动态语言。

允许通过反射获得类的全部信息

一个c类只有一个Class对象,对应加载到JVM中的.class文件。一个类只有一个Class对象,这就意味着,不管你创建多少的对象,他都只有一个类对象。

实例化的对象----->通过getClass()方法获取到类------->得到完整的“包类”名称。

通过反射获取类,

五种获取class对象的方法。打印类对象出现全包名

public static void main(String[] args) throws ClassNotFoundException {
Person person = new Student ();
System.out.println ("这个人是"+person.name);
//方法一:由对象实例.getClass(),获取
Class c1 = person.getClass ();
//方法二L:由类的完整路径名获取Class.forName("Reflection.Student");
Class c2 = Class.forName ("Reflection.Student");
System.out.println (c1);
System.out.println (c2);
//方法三:直接由已知类名获取类的实例
Class c3 = Student.class;
System.out.println (c3);
//方法四:基本的包装类都有一个Type属性,包装类获取类的实例
Class c4 = Integer.TYPE;
System.out.println (c4);
//方法五:由子类获取父类的Class对象
Class c5 = c1.getSuperclass ();
System.out.println (c5);
}
结果:
class Reflection.Student
class Reflection.Student
class Reflection.Student
int
class Reflection.Person

反射----获取class对象的五种方法的更多相关文章

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

    Java反射获取class对象的三种方式,反射创建对象的两种方式 1.获取Class对象 在 Java API 中,提供了获取 Class 类对象的三种方法: 第一种,使用 Class.forName ...

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

    public class ReflexAndClass { public static void main(String[] args) throws Exception { /** * 获取Clas ...

  3. Java反射获取类对象的三种方式

    package demo01; /* * 获取一个类的class文件对象的三种方式 * 1.对象获取 * 2.类名获取 * 3.Class类的静态方法获取 */ public class Reflec ...

  4. Unity3d获取游戏对象的几种方法

    1.GameObject.Find() 通过场景里面的名子或者一个路径直接获取游戏对象. GameObject root = GameObject.Find("GameObject" ...

  5. java实例化对象的五种方法

    1.用new语句创建对象,这是最常见的创建对象的方法. 2.通过工厂方法返回对象,如:String str = String.valueOf(23); 3.运用反射手段,调用java.lang.Cla ...

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

    String str="hello world"; //方式一 :通过对象的getClass()方法 Class<?> clazz1 =str.getClass(); ...

  7. TP6.0 获取请求对象的五种方式

    目录 1. 门面类 2. 依赖注入 3. 框架提供的基础控制器的 request 属性 4. request() 助手函数 5. app() 超级助手函数 think\Request.think\fa ...

  8. java:JavaScript2:(setTimeout定时器,history.go()前进/后退,navigator.userAgent判断浏览器,location.href,五种方法获取标签属性,setAttribute,innerHTML,三种方法获取form表单信息,JS表单验证,DOM对象,form表单操作)

    1.open,setTimeout,setInterval,clearInterval,clearTimeout <!DOCTYPE> <html> <head> ...

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

    获取Class对象的三种方式 package lianxiApril18; /** * 获取Class对象的三种方式 * 1 Object ——> getClass(); * 2 任何数据类型( ...

随机推荐

  1. scrapy爬虫提取网页链接的两种方法以及构造HtmlResponse对象的方式

    Response对象的几点说明: Response对象用来描述一个HTTP响应,Response只是一个基类,根据相应的不同有如下子类: TextResponse,HtmlResponse,XmlRe ...

  2. Java基础 - 数据类型和运算符

    Java 语言支持的类型分为两类:基本数据类型(Primitive Type)和引用类型(Reference Type). 目录 基本数据类型 数值类型 整数类型 byte short int lon ...

  3. [剑指offer]3.数组中的重复数字

    3.数组中的重复数字 题目 找出数组中重复的数字. 在一个长度为 n 的数组 nums 里的所有数字都在 0-n-1 的范围内.数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了 ...

  4. [二分] Codefoces Anton and Making Potions

    Anton and Making Potions time limit per test 4 seconds memory limit per test 256 megabytes input sta ...

  5. Hive内外表的区分方法及内外部差异

    Hive内外部区分方法 查看hive元数据:进入mysql中hive元数据库,查看TBLS表,查看对应的表名和表类型: 在hive-cli界面:desc extended tablename,查看Ta ...

  6. Arcgis连接SQL Server提示试图使用不支持的旧版SQL Server客户端通信软件进行连接

    一般提示这种错误的是arcgis服务区和SQL server服务器不在同一台电脑上,但在同一个局域网. 遇到这种问题是arcgis 服务器客户端连接SQL server数据库有问题,要么是客户端没有安 ...

  7. 如何找回QQ聊天记录、语音、图片?

    多图长图预警,本教程适用于 安卓手机 认真仔细看完答案的成功几率翻倍哟! 请各位认真看答案!求您了~ 2020年/4/4日 更新 人民不会忘记,祖国不会忘记,我们不会忘记,先烈不朽. 调整答案顺序,使 ...

  8. 有效括号算法题(Golang实现)

    有效括号算法题 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合.左括号必须以正确的顺序闭合.注意空 ...

  9. [noip模拟]种花<快速幂+结论>

    描述: OI太可怕了,我决定回家种田.我在后院里开辟了一块圆形的花圃,准备种花.种花是一种艺术,通过一定技术手法,花材的排列组合会让花变得更加的赏心悦目,这就是花艺.当然你知道,我在种田之前是OIer ...

  10. [bzoj]1053反质数<暴搜>

    题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1053 感想:这道题拿到以后还是想去知道一个数的约数个数要怎么求,去网上搜了公式,但是还是没有思 ...