摘要: 三个问题: 那些内存需要回收? -- 对象是否存活判断 什么时候回收? --垃圾回收触发条件 如何回收? --垃圾回收算法 垃圾回收应用 -- 理解GC日志、使用垃圾回收命令和工具 1. 判断对象是否存活 引用计数法 可达性分析算法 引用计数法:给对象增添一个计数器,每当被引用一次,计数器数值+1; 阅读全文
posted @ 2019-06-04 14:28 马三 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 一.运行时数据区 共分为5块: 程序计数器 (线程私有,当前线程所执行的字节码的行号指示器) Java虚拟机栈 (线程私有,证明周期与线程相同,描述的是Java方法执行的内存模型,每个方法在执行的同时都会创建一个栈帧,用于存储:局部变量表、操作数栈、动态链接、方法出口等信息) 本地方法栈 (线程私有 阅读全文
posted @ 2019-06-04 10:58 马三 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 安全组件组合模式,是一个类更容易成为线程安全的,并且在维护过程中不会无意中破坏类的安全性保证。 1设计线程安全的类 设计线程安全类 包含的三要素 找出构成对象状态的所有变量 找出约束状态变量的不变性条件 建立对象状态的并发访问管理策略 关键词: 对象状态 不变性条件 并发访问管理策略 1.1 收集同 阅读全文
posted @ 2019-05-17 11:32 马三 阅读(221) 评论(0) 推荐(0) 编辑
摘要: maven项目创建后 创建 src/main/java 和 src/main/test 会报错,目录已存在 打开build path 界面 src/main/java 和 src/main/test missing 在这里将他们移除,然后创建 需要注意的是Output folder 是空的,如图 要 阅读全文
posted @ 2017-09-02 16:50 马三 阅读(362) 评论(0) 推荐(0) 编辑
摘要: ·做了两年多Java Web一多半的项目都是SSM架构的,只搭建过两次,趁着周末做个总结整理。 Eclipse搭建Maven项目 1.new project --> Maven project 2.选择工作空间目录(默认目录就好,自选) 3.选择webapp 4.填写groupId 和 artifa 阅读全文
posted @ 2017-09-02 16:23 马三 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 此问题原因:Java程序编译使用的JDK和执行所用的JDK不是同一版本! 检查:查看eclipse的build path的Java版本 和 项目右键—>properties—>Java compiler下选择的版本,是否一致 将这两处的Java版本重新设置使之相同则解决报错! 阅读全文
posted @ 2017-08-27 17:04 马三 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 背景介绍 近一个月完成了公司的一个项目,负责即时聊天部分 寻找了一下,决定使用websocket,要问原因的话,因为tomcat 自带相关消息收发的API,用起来方便 闲话少叙,进入实现步骤 使用工具 java 1.6 tomcat 7.0.27以上版本(以下版本不支持websocket),本人使用 阅读全文
posted @ 2017-08-19 16:56 马三 阅读(3144) 评论(5) 推荐(3) 编辑
摘要: //场景: 要做一个网页即时通信,发送信息的文本编辑框 要求能发图片和表情,那么textarea就不能满足需求了,因为textarea内没有办法加入image// 采用方案是使用可编辑的DIV(也就是 一般 DIV的 contenteditable 属性为 true)// 但是发现添加表情或者插入图片之后,光标不会随着移动到末尾 图片和表情 采用的 append方式 添加的html... 阅读全文
posted @ 2017-08-06 18:25 马三 阅读(502) 评论(0) 推荐(0) 编辑
摘要: 首先说为什么有匿名类(产生的使命) 两个原因 1.简化代码编写 某种情况下,类只需要扩展一个方法,没必要为了一个方法单独去写一个子类,然后然后调用子类,此时需要匿名类 2.在不同的包内的类内调用类的protected方法(其实,也可以理解和第一个原因是一样的) 匿名类继承了父类,并调用了父类的pro 阅读全文
posted @ 2017-04-26 09:06 马三 阅读(788) 评论(0) 推荐(0) 编辑
摘要: 1.使用isNaN()函数 isNaN()的缺点就在于 null、空格以及空串会被按照0来处理 NaN: Not a Number /** *判断是否是数字 * **/ // 按照评论区同志们的意见 修改 先判定是否为number if(typeof val !== 'number'){ retur 阅读全文
posted @ 2017-04-21 15:57 马三 阅读(199437) 评论(5) 推荐(15) 编辑