摘要:
1. 程序最终都将在内存中执行,变量只有在内存中占有一席之地时才能被访问。 类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问;非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创建类的实例)时才会分配内存,然后通过类的对象(实例)去访问。 在一个类 阅读全文
posted @ 2017-06-20 10:55
竹马今安在
阅读(5438)
评论(0)
推荐(0)
摘要:
关于对象的创建过程一般是从new指令(我说的是JVM的层面)开始的(具体请看图1),JVM首先对符号引用进行解析,如果找不到对应的符号引用,那么这个类还没有被加载,因此JVM便会进行类加载过程。符号引用解析完毕之后,JVM会为对象在堆中分配内存,HotSpot虚拟机实现的JAVA对象包括三个部分:对 阅读全文
posted @ 2017-06-20 10:40
竹马今安在
阅读(698)
评论(0)
推荐(0)
摘要:
1.编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定。 当编译时类型和运行时类型不一致时,就会出现所谓的多态。 因为子类是一个特殊的父类,因此java允许把一个子类对象直接赋给一个父类的引用变量,无需任何类型转换(向上转型) 引用变量在编译阶段只能通过编译时类型所具有的方 阅读全文
posted @ 2017-06-20 10:11
竹马今安在
阅读(1347)
评论(1)
推荐(0)
摘要:
一、什么时候会加载类?使用到类中的内容时加载:有三种情况1.创建对象:new StaticCode();2.使用类中的静态成员:StaticCode.num=9; StaticCode.show();3.在命令行中运行:Java StaticCodeDemo二、类所有内容加载顺序和内存中的存放位置: 阅读全文
posted @ 2017-06-20 09:42
竹马今安在
阅读(267)
评论(0)
推荐(0)

浙公网安备 33010602011771号