今天开始写技术博客,把每天所学写出来,有错误希望大家指点

以前只学习了一些java很基础的东西,像反射呀多线程这些都没有去深入了解。

1. 反射不是jdk5.0的新特性,自从1.2以来就有了,框架的编写都会用反射技术来实现。

2.我们用class(小写)来表示生活中各种类,描述这类事物有什么属性,没有什么属性,什么行为等等,class不管具体的值,由这个类的实例对象来决定

3. java程序中各个class也算是一种事物,同一种事物,那么我们怎么描述这一类事物?这时我们就需要Class。比如说 ---->Person            java ----->Class

4. Class中就应该包括这个类的名字,属于哪个包,有哪些方法,有哪些成员变量。有哪些方法等等。

5. Class class1 = 字节码1Class class2 = 字节码2;每一份字节码就是Class的实例对象。

6.当我们在源程序中用到了Person这个类的时候,先把类的字节码加载到内存里面来,再用这个类的字节码复制出一个个的对象来,我们用到了几个类,内存中就会存在这几个类的字节码,这些字节码就是Class的实例对象。

7.
  1. C lass class1 = Date.class;// 字节码 1 Class class2 = Person.class;// 字节码 2
    Person p = new Person(),p 就是那个字节码new出来的对象, p.getClass() 得到的是那份字节码对象new出来的。以上两种方法都是这个类的字节码已经加载到内存里面来了,现在要得到字节码,不需要再加载了,自己找到那份字节码,把它返回。
    Class .forName( "com.interview.Person" ); 也可以得到这个类的字节码,但是这时这个类的字节码还没有加载到内存里,通过该语句加载完成之后,就把那份字节码在内存中缓存起来,同时 forName 方法返回了该字节码。以后想要这份字节码就不需要再加载了。做反射时主要用这种方式。
  1. 8. 可以将括号里面的值换成一个字符串类型的变量,等程序运行起来以后这个变量的值从一个配置文件里面装载进来。

9. 八种基本类型和一个void类型都有对应的Class,有9个预定义Class类型的对象。

10. Integer 类中有一个TYPE常量代表Integer所包装的int类型的字节码。其他封装类类型也是一样。总之,只要在源程序中出现的类型,都有各自的Class实例对象,例如,int[],void,,,








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值