JAVA反射学习笔记2

-----------android培训java培训、java学习型技术博客、期待与您交流!------------

一.  数组的反射:

a)        具有相同维数和元素类型的数组属于同一个类型,即具有相同的Class实例对象.

b)        代表数组的Class实例对象的getSuperClass()方法返回的父类为Object类对应的Class.

c)        基本类型的一维数组可以被当作Object类型使用,不能当作Object[]类型使用,非基本类型的一维数组,既可以当做Object类型使用,又可以当做Object[]类型使用

二.  ArrayList-HashSet的比较及Hashcode分析:

a)        equals()和hashCode()方法的重写

b)        当一个对象被存储进HashSet集合中以后,就不能修改这个对象中的那些参与计算哈希值的字段了,否则,对象修改后的哈希值与最初存储进HashSet集合中的哈希值就不同了,在这种情况下,即使在contains方法使用该对象的当前引用作为的参数去HashSet中检索对象,也将返回找不到对象的结果,这也会导致无法从HashSet集合中单独删除当前对象,从而造成内存泄露.

三.  反射的作用:实现框架功能

a)        框架与框架要解决的核心问题

                        i.             我做房子卖给用户住,由用户自己安装门窗和空调,我做的房子就是框架,用户需要使用我的框架,把门窗插入进我提供的框架中,框架与工具类有区别,工具类被用户的类调用,而框架则是调用用户提供的类

b)        框架要解决的核心问题

                        i.             我在写框架怎么调用到用户以后写的类了

                      ii.             因为在写程序时无法知道要被调用的类,所以无法直接NEW某个类的实例对象,而要用反射来做.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值