
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的人都在学习java编程开发语言,而今天我们就通过案例分析来了解一下,java编程类加载步骤与注意事项。
加载指的是通过一个完整的类或接口名称来获得其二进制流的形式,并将其按照Java虚拟机规范将数据存储到运行时数据区域,类加载主要做三件事:
通过一个类的全限定名获得定义此类的二进制字节流。
将这个二进制字节流所代表的的静态存储转化为方法区运行时数据结构。
在Java堆中生成一个代表此类的java.lang.Class对象,作为方法区中这些数据的访问入口。
上面一步在虚拟机规范中并没有说明Class来源于哪里,也没有说明怎么获取,所以就会产生很多的实现方式,下面就是一些常用的实现方式:
正常的方式:读取本地经过编译的.class文件
从压缩包如zip,jar,war中读取。
从网络中读取
通过动态代理动态生成.class文件
从数据库读取
执行Class的加载需要一个类加载器,而一个良好合格的类加载器需要具有以下两个属性:
对于同一个Class名称,任何时候都应该返回相同的Class对象
如果类加载器L1委派给类加载器L2去加载一个Class对象C,那么以下场景出现的任意类型T,两个类加载器L1和L2都应该返回相同的Class对象:
(1)C的直接父类或者父接口类型
(2)C中的字段类型
(3)C中方法或者构造函数的参数类型
(4)C中方法的返回类型
在Java中类加载器不止一种,对于同一个类用不同的类加载器加载出来的对象是不相等的,那么Java是如何保证上面两点呢?这就是双亲委派模型,Java通过双亲委派模型防止恶意加载,也确保了安全性。
希望这辈子,最让你无悔的事情就是来达内学习!学习向来不是件易事,但无论过程多么艰难,希望你依然热爱生活,热爱学习!永远记得,达内将与你一同前行!现在扫码,立即领取万元课程礼包,助力0基础快速入行,为你梳理行业必备技能,全方位了解岗位发展前景!
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请在707945861群中学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。