初始化

jvm-类的装载

空扰寡人 提交于 2020-02-25 19:37:32
类的装载经过加载 、连接(验证、准备、解析)、初始化过程,最后转化为Class对象,存在方法区中。 1、类在什么情况下才会被装载? 1、创建类的实例:new关键字,反射、克隆、反序列化。 2、当调用类静态方法:使用了字节码invokestatic指令。 3、当使用类的静态字段时(final常量除外),比如使用了getstatic或者putstatic指令。 4、初始化子类时要求先初始化父类。 5、含有main方法的那个类。 上面的几种情况都属于主动使用,除了主动使用还有被动使用,被动使用不会引起类的初始化。 主动使用示例: public class Parent { static { System . out . println ( "parent init" ); } } public class Child extends Parent { static { System . out . println ( "child init" ); } } public class InitMain { public static void main ( String [] args ) { Child c = new Child (); } } ​ 运行结果: parent init child init 使用new关键字创建类的实例会装载相关类,以及在初始化子类时,必须先初始化父类。

移动硬盘在磁盘管理中显示没有初始化恢复文件方法

我们两清 提交于 2020-02-25 17:27:45
问题描述: 磁盘没有初始化是因为分区表损坏了,导致可移动磁盘出现磁盘没有初始化。 工具/软件:极限数据恢复软件 步骤1:程序打开后,直接双击需要恢复的物理盘,磁盘没有初始化需要从磁盘恢复文件。 步骤2:等软件扫描完毕一般需要几分钟到半个小时,稍微耐心等下即可。 步骤3:程序扫描到文件后,程序会将扫描到的盘列出来。 步骤4:将要恢复的文件选中,右击选择《复制选中的文件》,软件会将勾选的文件复制出来。 步骤5:最后一步只需等待软件将数据拷贝完毕就可以了 。 注意事项1:想要恢复磁盘没有初始化需要注意,在资料恢复之前,不要重建新的分区。 注意事项2:磁盘没有初始化找到出来的文件需要暂时保存到其它盘里。 来源: 51CTO 作者: osmx 链接: https://blog.51cto.com/13450921/2470048

the permission value is offline verifying

杀马特。学长 韩版系。学妹 提交于 2020-02-25 16:17:19
这个错误是因为config没有正确执行,或者是调用的JSAPI没有传入config的jsApiList参数中。建议按如下顺序检查: 确认config正确通过。 如果是在页面加载好时就调用了JSAPI,则必须写在wx.ready的回调中。 确认config的jsApiList参数包含了这个JSAPI。 (微信初始化在第一个页面就进行初始化) 来源: CSDN 作者: wx_963907964 链接: https://blog.csdn.net/qq_28552181/article/details/104497708

SpringSecurity 初始化流程源码

人走茶凉 提交于 2020-02-25 15:42:08
SpringSecurity 初始化流程源码 本篇主要讲解 SpringSecurity初始化流程的源码部分,包括核心的 springSecurityFilterChain 是如何创建的,以及在介绍哪里可以扩展个性化的配置,SpringSecurity源码其实是蛮难得 各种Builder Configure 看得真的头疼!  1.简单介绍  SpringSecurity 的核心功能主要包括:  认证 (你是谁)  授权 (你能干什么)  攻击防护 (防止伪造身份)  其核心就是一组过滤器链,项目启动后将会自动配置,本篇也会涉及过滤器链是如何自动初始化的。   SecurityContextPersistenceFilter 是最前面的一个filter  请求到它时候会去检查 根据sessionId找到session 判断session 中是否存在 SecurityContext 在 则将 SecurityContext 存入当前的线程中去  响应的时候,看当前线程是否有SecurityContext ,如果有 放入到session中去 这样不同的请求都能拿到相同的 用户认证信息。   UsernamePasswordAuthenticationFilter 该过滤器是处理表单登录的,通过表单登录提交的认证都会经过它处理   SocialAuthenticationFilter

并发编程之J.U.C的第二篇

走远了吗. 提交于 2020-02-25 12:46:30
并发编程之J.U.C的第二篇 3.2 StampedLock 4. Semaphore Semaphore原理 5. CountdownLatch 6. CyclicBarrier 7.线程安全集合类概述 8. ConcurrentHashMap 3. JDK7 ConcurrentHashMap 3. 性能比较 10. ConcurrentLinkedQueue 11. CopyOnWriteArrayList 3.2 StampedLock 该类自JDK8加入,是为了进一步优化读性能,它的特点是使用读锁、写锁时都必须配合【戳】使用 加解读锁 加锁写锁 乐观锁,StampedLock 支持 tryOptimisticRead()方法(乐观读),读取完毕后需要做一次戳校验,如果校验通过,表示这期间确实没有写操作,数据可以安全使用,如果校验没通过,需要重新获取读锁,保证数据安全。 4. Semaphore 信号量,用来限制能同时访问共享资源的线程上限。 Semaphore原理 加锁解锁流程 Semaphore 有点像一个停车场,permits 就好像停车位数量,当线程获得了 permits就像是获得了停车位,然后停车场显示空余车位减一 刚开始,permits(state)为3,这时5个线程来获取资源 假设其中 Thread - 1,Thread - 2,Thread -4 cas

Java基础(一)语法基础

自闭症网瘾萝莉.ら 提交于 2020-02-25 01:45:00
文章目录 大纲 1.Java语言及JVM 什么是JDK、JRE、JVM,及其之间的关系: java编译运行原理 2.数据类型 3.运算符 赋值运算中的类型转换 4.流程控制 知识点 if语句 switch语句 循环语句 for each* break 与 continue 5.数组 使用过程 数组初始化 1)动态初始化 2)静态初始化 其他 6.方法 定义 方法调用之方法调用图解 方法的重载overload 方法的重写* 7.各类关键字* 大纲 1.Java语言及JVM 知识点: 1)什么是Java语言: Java是跨平台的纯面向对象的语言 2)JVM概念: JVM是运行在操作系统之上,是一个可以运行java代码的虚拟计算机; 对于不同的平台,有不同的虚拟机,其屏蔽了底层运行平台的差别,实现了“一次编译,导出运行”。 什么是JDK、JRE、JVM,及其之间的关系: JDK(Java Development Kit,Java开发工具包): 包含JRE以及一些开发工具 面向开发人员使用(开发用的) JDK:javac.exe:编译工具, java.exe:运行工具 JRE(Java Runtime Environment,Java运行时环境): 包含JVM以及一些核心的运行类库,面向运行人员使用(运行用的) 核心类库,简单理解就是已经写好的java代码(eg

React的生命周期钩子函数

喜欢而已 提交于 2020-02-25 01:24:44
React的常用的声明周期钩子函数 数据初始化阶段 组件初始化会执行的四个钩子函数 1.constructor( props, context) //初始化动作 //用于初始化数据 2.static getDerivedStateFromProps(props,state) //静态方法 不能使用this 不实例化也可以通过 类名.方法名 来调用 能实时更新父组件传递过来的参数 3.render() 这个方法是必须的,当他被调用是,他讲计算 this.props和this.state 并返回以下一种类型 React 元素,通过 jsx 创建,既可以是 dom元素,也可以是用户自定义的组件 字符串或数字,他们将会以文本节点形式渲染到dom中 null,什么也不许安然 布尔值,也是什么都不许安然 4.componentDidMount 组件呗装配后立即调用,初始化时的DOM节点应该进行到这里 通常在这里进行 ajax 请求 如果要初始化第三方的dom库,也是在这里进行初始化 只有到这里才能获取到真是的dom节点 更新阶段的常用的四个钩子函数 1.shouldComponentUpdate(nextProps,nextState){ return boole } 判断组件是否需要更新 返回值是一个布尔值 true 就进行渲染 flase 就会渲染 默认为 true 如果

python函数默认参数为可变对象的理解

坚强是说给别人听的谎言 提交于 2020-02-25 01:10:02
python函数默认参数为可变对象的理解 1.代码在执行的过程中,遇到函数定义,初始化函数生成存储函数名,默认参数初识值,函数地址的函数对象。 2.代码执行不在初始化函数,而是直接执行函数体。 代码实例 这要从函数的特性说起,在 Python 中,函数是第一类对象(function is the first class object),换而言之,函数也是对象,跟整数、字符串一样可以赋值给变量、当做参数传递、还可以作为返回值。函数也有自己的属性,比如函数的名字、函数的默认参数列表。 # 函数的名字 >>> func.__name__   'func'   # 函数的默认参数列表 >>> func.__defaults__   ([ 1, 1, 1, 1, 1], 1) def是一条可执行语句,Python 解释器执行 def 语句时,就会在内存中就创建了一个函数对象(此时,函数里面的代码逻辑并不会执行,因为还没调用嘛),在全局命名空间,有一个函数名(变量叫 func)会指向该函数对象,记住,至始至终,不管该函数调用多少次,函数对象只有一个,就是function object,不会因为调用多次而出现多个函数对象。 函数对象生成之后,它的属性:名字和默认参数列表都将初始化完成。 初始化完成时,属性 __default__ 中的第一个默认参数 numbers 指向一个空列表。

python函数默认参数为可变对象的理解

岁酱吖の 提交于 2020-02-25 01:09:44
1.代码在执行的过程中,遇到函数定义,初始化函数生成存储函数名,默认参数初识值,函数地址的函数对象。 2.代码执行不在初始化函数,而是直接执行函数体。 代码实例 这要从函数的特性说起,在 Python 中,函数是第一类对象(function is the first class object),换而言之,函数也是对象,跟整数、字符串一样可以赋值给变量、当做参数传递、还可以作为返回值。函数也有自己的属性,比如函数的名字、函数的默认参数列表。 # 函数的名字 >>> func.__name__   'func'   # 函数的默认参数列表 >>> func.__defaults__   ([ 1, 1, 1, 1, 1], 1) def是一条可执行语句,Python 解释器执行 def 语句时,就会在内存中就创建了一个函数对象(此时,函数里面的代码逻辑并不会执行,因为还没调用嘛),在全局命名空间,有一个函数名(变量叫 func)会指向该函数对象,记住,至始至终,不管该函数调用多少次,函数对象只有一个,就是function object,不会因为调用多次而出现多个函数对象。 函数对象生成之后,它的属性:名字和默认参数列表都将初始化完成。 初始化完成时,属性 __default__ 中的第一个默认参数 numbers 指向一个空列表。 当函数第一次被调用时,就是第一次执行 func()时

React 生命周期

我的梦境 提交于 2020-02-24 23:35:32
从vue来到了react,很多相似之处,还好,自我感觉生命周期函数就是个执行过程,生命周期函数(钩子函数)通俗的说就是在某一时刻会被自动调用执行的函数 从React生命周期官方了解 componentWillMount 在渲染前调用,在客户端也在服务端。 componentDidMount 在第一次渲染后调用,只在客户端。之后组件已经生成了对应的DOM结构,可以通过this.getDOMNode()来进行访问。 如果你想和其他JavaScript框架一起使用,可以在这个方法中调用setTimeout, setInterval或者发送AJAX请求等操作(防止异步操作阻塞UI)。 componentWillReceiveProps 在组件接收到一个新的 prop (更新后)时被调用。这个方法在初始化render时不会被调用。 shouldComponentUpdate 返回一个布尔值。在组件接收到新的props或者state时被调用。在初始化时或者使用forceUpdate时不被调用。 可以在你确认不需要更新组件时使用。 componentWillUpdate 在组件接收到新的props或者state但还没有render时被调用。在初始化时不会被调用。 componentDidUpdate 在组件完成更新后立即调用。在初始化时不会被调用。 componentWillUnmount