首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

理解java中反射,区别Class.forName(),Class.forName().instance() ,new,如果获取对象中的方法和字段「建议收藏」

先了解一些基本的概念:运行时,编译时,编译型,解释型,类加载器,动态加载类 什么是编译?将原程序翻译成计算机语言,就是二进制代码,在java中是将.java文件也就是源程序翻译成.class的字节码 什么是编译时?将原程序翻译成计算机语言的过程中,将.java翻译为.class文件的过程 什么是运行时?就是在启动这个程序的时候,在java中是,类加载器加载.class文件,并交给jvm处理 什么是编译型语言?将原程序一次性全部转换为二进制代码,然后执行程序 什么是解释型语言?转换一句,执行一句,java是既编译又解释的语言 编译型语言和解释型语言的区别:编译型语言效率高,依赖于编译器,但是跨平台差,解释型的效率低,依赖于解释器,但跨平台强 什么是类加载器?类加载器就是JVM中的类装载器,作用就是将编译好的.class字节码运到检查器进行安全检查的,检查通过后开始解释执行 什么是运行时动态加载类? 反射就是可以将一个程序(类)在运行的时候获得该程序(类)的信息的机制,也就是获得在编译期不可能获得的类的信息,因为这些信息是保存在Class对象中的,而这个Class对象是在程序运行时动态加载的 它 就是可以在程序运行的时候动态装载类,查看类的信息,生成对象,或操作生成对象。类在运行的时候,可以得到该类的信息,并且 可以动态的修改这些信息。class对象是在运行的时候产生的,通过class对象操作类的信息是在运行时进行的,当运行 程序的时候,类加载器会加载真正需要的类,什么是真正需要的呢?就是该类真正起作用,如:有该类的对象实例,或该类调用了静态方法属性等

02

HBuilder扩展代码块功能

作为程序员,大家都应该比较烦的事情就是将相同的代码块复制到N多个地方,但是这种情况有不可避免。为了解决这个问题,我希望实现的是直接将对应的模块提前在编辑器中编辑好,然后用一两个字母提示就能将这个模块调用。最后就找到了HBuilder,因为HBuilder最大的特点就是编辑快,快的原因就是他能实现将我们常用代码模块化。(说到这里我不得不吐槽一下他的智能提示,真心做的很差,在同类软件中我可以说他的只能提示是最差的,没有之一。连常用词汇排在第一个这么简单的功能都没做,真心无语。)但是好处就是他可以用---扩展代码块---这个功能不全。废话不多说,直接来功能!

01
领券