堆区 栈区 方法区
刚创建的时候会放到堆区
运行的对象存储在堆区(属性)
栈区存放变量
方法区存放方法
java虚拟机运行机制
转化为字节码文件,然后jvm运行,并不是所有的字节码文件都会运行,当需要的时候在运行(调取到jvm中),
java反射提供的功能:
- 在运行时判断任意一个对象所属的类
- 在运行时构造任意一个类的对象
- 在运行时判断任意一个类所具有的成员变量和方法
- 在运行时调用任意一个对象的方法
- 生成动态代理
Java反射机制中设计的类
- Class:类的实例表示正在运行的 Java 应用程序中的类和 接口
- Field:提供有关类或接口的属性的信息,以及对它的动态 访问权限
- Constructor:提供关于类的单个构造方法的信息以及对它 的访问权限
- Method:提供关于类或接口上单独某个方法的信息
Class
**类的实例表示正在运行的 Java 应用程序中的类和 接口 **
- 获取Class对象
- 通过Object的getClass()方法
- 通过Class的getSuperClass()方法
- 通过Class的静态forName()方法 数据库中用得到,获取数据库驱动
- 对于包装器类型,通过类名.TYPE属性