1、java 代码:

  1. package reflectionZ;
  2.  
  3. public class TreflectionZ
  4. {
  5. public static void main(String[] args) throws ClassNotFoundException
  6. {
  7. // 得到 Cat的 Class对象
  8. // 1、通过 forName
  9. Class<?> clazz1 = Class.forName("reflectionZ.Cat"); // ZC: 会报异常"ClassNotFoundException"
  10. System.out.println("clazz1 : "+clazz1+" , "+clazz1.hashCode());
  11. // 2、通过 class属性
  12. Class<?> clazz2 = Cat.class;
  13. System.out.println("clazz2 : "+clazz2+" , "+clazz2.hashCode());
  14. // 3、通过 对象实例.getClass()
  15. Cat cat = new Cat();
  16. Class<?> clazz3 = cat.getClass();
  17. System.out.println("clazz3 : "+clazz3+" , "+clazz3.hashCode());
  18.  
  19. System.out.println("*** *** ***");
  20. if (clazz1 == clazz2)
  21. System.out.println("clazz1 == clazz2");
  22. else
  23. System.out.println("clazz1 != clazz2");
  24. if (clazz1 == clazz3)
  25. System.out.println("clazz1 == clazz3");
  26. else
  27. System.out.println("clazz1 != clazz3");
  28. if (clazz2 == clazz3)
  29. System.out.println("clazz2 == clazz3");
  30. else
  31. System.out.println("clazz2 != clazz3");
  32. // ZC: 上面三个判断 都是相等,可见 java中的对象的比较,比较的是 变量所指向的对象 而非变量本身 ... ! ! !
  33. }
  34. }
  35.  
  36. class Cat
  37. {}

2、控制台 输出:

  1. clazz1 : class reflectionZ.Cat , 8152936
  2. clazz2 : class reflectionZ.Cat , 8152936
  3. clazz3 : class reflectionZ.Cat , 8152936
  4. *** *** ***
  5. clazz1 == clazz2
  6. clazz1 == clazz3
  7. clazz2 == clazz3

3、

Reflection01_获取Class对象的更多相关文章

  1. WebAPI中无法获取Session对象的解决办法

    在MVC的WebApi中默认是没有开启Session会话支持的.需要在Global中重写Init方法来指定会话需要支持的类型 public override void Init() { PostAut ...

  2. 《Entity Framework 6 Recipes》中文翻译系列 (45) ------ 第八章 POCO之获取原始对象与手工同步对象图和变化跟踪器

    翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 8-6  获取原始对象 问题 你正在使用POCO,想从数据库获取原始对象. 解决方案 ...

  3. js和jquery获取当前对象的子元素

    开发中经常遇到需要获取ul下的il对象,个人总结了js和jquery的方法. HTML片断: <ul class="box"> <li>子元素1</l ...

  4. 获取Graphics对象的方法

    在做自定义控件时或者GDI+的时候经常会遇到获取Graphics实例的问题.一般有三种获取方式 1.从Paint事件的参数中获取.窗体和许多控件都有一个Paint事件,有一个PaintEventArg ...

  5. (转)JS获取当前对象大小以及屏幕分辨率等

    原文 JS获取当前对象大小以及屏幕分辨率等   <script type="text/javascript">function getInfo(){       var ...

  6. Unity关于获取游戏对象

    我觉得Unity里面的Transform 和 GameObject就像两个双胞胎兄弟一样,这俩哥们很要好,我能直接找到你,你也能直接找到我.我看很多人喜欢在类里面去保存GameObject对象.解决G ...

  7. 第三章 EnumUtil根据值获取枚举对象

    项目中使用枚举类的好处这里不再赘述,在使用枚举值时,通常需要根据值来获取枚举对象,下面介绍两种实现方案: 1.在枚举类中定义方法实现 首先给出如下性别枚举类: public enum SexEnum ...

  8. 通过Guid获取DirectoryEntry对象

    绑定DirectoryEntry对象通常有两种方法,一种是通过字符串(如通过ADsPath),一种是通过Guid(参见:http://msdn.microsoft.com/zh-cn/library/ ...

  9. ajax获取json对象

    ajax获取json对象 ajax获取json数据,都是一个原理,设置response 的Content-Type:application/json,这样浏览器自动会解析为json对象 $result ...

随机推荐

  1. Javascript调用WinForm方法

    window.external.MyMessageBox('javascript访问C#代码')

  2. HTTP请求 蜘蛛的 user-agent

    百度爬虫 * Baiduspider+(+http://www.baidu.com/search/spider.htm”) google爬虫 * Mozilla/5.0 (compatible; Go ...

  3. Java 连接池的工作原理(转)

    原文:Java 连接池的工作原理 什么是连接? 连接,是我们的编程语言与数据库交互的一种方式.我们经常会听到这么一句话“数据库连接很昂贵“. 有人接受这种说法,却不知道它的真正含义.因此,下面我将解释 ...

  4. django_上传文件

    要求:  写一个文件上传:如果文件名字重复,不要覆盖,并且放到项目根路径的media文件夹下 def upload(request): if request.method == "GET&q ...

  5. sys模块 logging模块 序列化模块

    一 :sys模块 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0) sys.version 获取Python解释程序的版本信息 ...

  6. 【Java编程】写入、读取、遍历Properties文件

    在Java开发中通常我们会存储配置參数信息到属性文件.这种属性文件能够是拥有键值对的属性文件,也能够是XML文件.关于XML文件的操作,请參考博文[Java编程]DOM XML Parser 解析.遍 ...

  7. android学习四---Activity和Intent

    1.android项目资源深入了解 在深入学习android之前,先好好玩玩手机上的应用,大部分程序都有一个图标,点开图标,程序启动,一定时间后,程序会跳转到第一个界面,比如手机QQ,点开图标,会跳出 ...

  8. python读取/写入文件

    <Python编程:从入门到实践>读书笔记 1.读取文件并且对文件内容进行打印有三种方式: with open('test.txt') as fo: for lins in fo: pri ...

  9. 关于shared pool的深入探讨(一) 【转载】

    关于shared pool的深入探讨(一)   作者:eygle |English [转载时请标明出处和作者信息]|[恩墨学院 OCM培训传DBA成功之道]链接:http://www.eygle.co ...

  10. mysql双向主从同步

    双向主从同步 双方互相主从同步配置 然后再my.cnf中加上如下配置 [mysqld]master1:auto_increment_increment = 2 //自增ID的间隔,如1 3 5间隔为2 ...