类加载是为了执行静态方法
在数据库调用常见 Class.forName("com.mysql.jdbc.Driver");语句,这是用于加载数据库的此类.
此类的源码是
1 public class Driver extends NonRegisteringDriver implements java.sql.Driver { 2 3 static { 4 try { 5 java.sql.DriverManager.registerDriver(new Driver()); 6 } catch (SQLException E) { 7 throw new RuntimeException("Can't register driver!"); 8 } 9 } 10 11 12 public Driver() throws SQLException { 13 // Required for Class.forName().newInstance() 14 } 15 }
加载此类的目的是为了执行依赖此类的静态方法。也可以通过创建此类的对象的方式来 动态加载此类以达到实现此类的静态方法。
不管加载此类还是 创建此类的对象目的都是为了执行此类的静态方法。
测试加载类并且创建静态方法
1 package cn.itcast.util; 2 3 public class JdbcUtil { 4 5 static 6 { 7 System.out.println("load this class"); 8 } 9 10 public static void main (String[] args) throws ClassNotFoundException 11 { 12 //aa b=new aa(); 13 Class.forName("cn.itcast.util.aa"); 14 System.out.println("xxxxxxxx"); 15 } 16 } 17 class aa 18 { 19 static 20 { 21 System.out.println("load this class aaaaaaaaaa"); 22 } 23 }
转载于:https://www.cnblogs.com/friends-wf/p/3739509.html
类加载是为了执行静态方法相关推荐
- JVM00_面试官对类加载器子系统、运行时数据区、内存分布、执行引擎的灵虚拷问,你能坚持到第几问?
因为热爱所以坚持,因为热爱所以等待.熬过漫长无戏可演的日子,终于换来了人生的春天.他逐渐被人熟知,被人喜爱 三年前,在苏州园区某个国企面试,第一道题目便是:JVM是什么吗?然后就是拿着笔试题目被面试官 ...
- Java的类加载机制
jvm系列 垃圾回收基础 JVM的编译策略 GC的三大基础算法 GC的三大高级算法 GC策略的评价指标 JVM信息查看 GC通用日志解读 jvm的card table数据结构 Java类初始化顺序 J ...
- 编写递归下降语法分析器_面试BAT必问的JVM,今天我们来说一说它类加载器的底层原理...
类加载器的关系 类加载器的分类 JVM支持两种类加载器,一种为引导类加载器(Bootstrap ClassLoader),另外一种是自定义类加载器(User Defined ClassLoader) ...
- Java系列笔记(1) - Java 类加载与初始化
2019独角兽企业重金招聘Python工程师标准>>> 目录 类加载器 动态加载 链接 初始化 示例 类加载器 在了解Java的机制之前,需要先了解类在JVM(Java虚拟机)中是如 ...
- fegin需要实现类_深入理解JVM(六)--虚拟机类加载机制
虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制. 类从被加载到虚拟机内存开始,到卸载出内存为止 ...
- java类加载器、双亲委派、沙箱安全机制全都让你整明白(三万字,收藏慢慢啃)
目录 一.概述 1.类加载的分类 2.类加载器的必要性 3.命名空间 4.类加载机制的基本特征 二.类加载器的分类 1.引导类加载器 2.扩展类加载器 3.系统类加载器 4.用户自定义类加载器 三.测 ...
- java类验证和装载顺序_JVM类加载过程分析及验证
JVM类加载过程共分为加载.验证.准备.解析.初始化.使用和卸载七个阶段 这些阶段通常都是互相交叉的混合式进行的,通常会在一个阶段执行的过程中调用或激活另外一个阶段. 加载 加载过程是JVM类加载的第 ...
- Java内存管理-掌握虚拟机类加载机制(四)
勿在流沙筑高台,出来混迟早要还的. 做一个积极的人 编码.改bug.提升自己 我有一个乐园,面向编程,春暖花开! 上一篇介绍了整个JVM运行时的区域,以及简单对比了JDK7和JDK8中JVM运行时区域 ...
- java.lang包—类加载器ClassLoader类
注意: 类加载器的知识与JVM内存模型紧密相连,要学好这块的知识,一定要掌握JVM的内存模型. 关于JVM内存模型,推荐阅读:JVM-内存模型JMM 目录 一.什么是ClassLoader? 二.类加 ...
最新文章
- dubbo的provider和consumer的demo
- 从传递函数到差分方程的转换
- linux提示光标下无字符串,vim复制、粘贴、删除、撤销、移动光标(linux)
- linux模拟题,Linux操作系统模拟题.doc
- 昨天一天都没怎么看书。。。
- P2685 [TJOI2012]桥
- 数学天桥之中值定理|北京有文化的天桥
- nginx和tomcat搭配使用,让nginx可以访问tomcat下面的静态资源
- Android中监听ScrollView滑动停止和滑动到底部
- Python中的字典(Dictionary)
- 关于sqlite断电或者存储空间不足造成的数据文件损坏问题-转
- 计算机二级公共基础知识个人整理
- c语言函数实现顺序线性表,数据结构C语言实现——顺序线性表SqList
- Unity写lua代码的vs插件:BabeLua
- python 循环高级用法 [expression for x in X [if condition] for y in Y [if condition] ... for n in N [if con
- 信必优成功案例 – 中国网络电视台(CNTV)
- 启动maven nexus3时遇到的诡异异常
- html卡片式轮播图带字,卡片式轮播
- 使用dnsmasq在本地将域名解析为CNAME别名
- RabbitMQ问题排解