2014年1月22日

反射机制

摘要: 在java运行时获取任意一个类的属性、方法、构造函数,并可以修改属性、调用方法、创建对象,这种动态获取类的信息以及动态调用对象的方法的功能来自于java语言的反射机制。Reflection是java被视为动态(或准动态)语言的一个关键性质。这个机制允许程序在运行时透过Reflection API取得任意一个已知名称的class的内部信息。一般而言,开发者社群说到的动态语言,大致认同的一个定义是:“程序在运行时,允许改变程序结构或变量类型,这种语言称为动态语言”。从这个观点来看,Perl,Python,Ruby是动态语言,C++、java、C#不是动态语言。尽管在这样的定义与分类下java不是动 阅读全文

posted @ 2014-01-22 21:18 GoBackHome 阅读(305) 评论(0) 推荐(0)

深入JVM之类的加载器

摘要: 类加载器有两种:—java虚拟机的自带加载器根类加载器(Bootstrap)扩展类加载器(Extension)系统类加载器(AppClassLoder)—自定义的类加载器java.lang.ClassLoder的子类用户可以定制类的加载方式 阅读全文

posted @ 2014-01-22 18:22 GoBackHome 阅读(139) 评论(0) 推荐(0)

深入JVM之类的加载过程

摘要: 类的加载—连接—初始化加载:查找并加载类的字节码文件,从硬盘到内存.类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构,加载的.class文件的方式主要有:从本地系统中直接加载,通过网络下载.class文件,从zip、jar等归档文件中加载.class文件,从专有数据库中提取.class文件,将java源文件动态编译成.class文件。类的加载的最终产物就是位于堆内存中的Class对象。Class对象封装了类在方法区内的数据结构,并且向java程序员提供了访问方法区 阅读全文

posted @ 2014-01-22 15:46 GoBackHome 阅读(182) 评论(0) 推荐(0)

模拟银行业务系统逻辑

摘要: 面向对象的关键:你不能首先考虑这个程序需要实现什么,你必须要首先思考这个程序要模拟什么也就是说,你必须要先通过在实际生活中的思维方式,把整个业务流程模拟出来然后再对整个业务流程进行抽象。 需求如下:1. 银行内有6个业务窗口,1 - 4号窗口为普通窗口,5号窗口为快速窗口,6号窗口为VIP窗口。2.有三种对应类型的客户:VIP客户,普通客户,快速客户(办理如交水电费、电话费之类业务的客户)。3.异步随机生成各种类型的客户,生成各类型用户的概率比例为:VIP客户 :普通客户 :快速客户 = 1 :6 :3。4.客户办理业务所需时间有最大值和最小值,在该范围内随机设定每个VIP客户以及普通客户办理 阅读全文

posted @ 2014-01-22 00:31 GoBackHome 阅读(593) 评论(0) 推荐(0)

导航