国航OA项目技术总结(二)关于JVM虚拟机中对象的创建,手机端提速的重要优化

简介:

由于JVM虚拟机对对象的销毁,程序员是不知道的;而且手机的配置肯定不如PC机,就算PC机里程序运行得多顺畅,手机里的运行速率还是不敢保证。


针对对象的问题,尽量将一次能创建的对象只创建一次:


比如中文都得这样写:

public static final String TRACE = "流程跟踪";//√
	public static final String TITLE = "标题:";//√
	public static final String DRAFTER ="拟稿人:";//√
	public static final String DRAFTERTIME ="拟稿日期:";//√
	public static final String DRAFTERSEPT ="拟稿部门:";//√
	public static final String URGENCYLEVEL ="紧急程度:";//√
	public static final String CONTACTPHONE ="联系电话:";//√
	public static final String ATTMENT ="附件:";//√
	public static final String CONTEXT = "正文附件";
	public static final String BIZZTYPE ="业务类型:";//√
	public static final String ANNOUNCEMENTTYPE ="公告类型:";//√
	public static final String OPTION = "公司领导意见";//√
	public static final String ADVICE = "审批意见";//√
	public static final String TRANSELECT = "路径选择:";//√
	public static final String BACKTODRAFTER = "退回拟稿人";//√
	public static final String PUBSEPT ="发布范围:";//√
	public static final String SUBMIT = "提交";//√
	public static final String SUBMITDETAIL = "您确定提交以上信息吗?";//√\
	public static final String MESSAGE = "请填写审批意见";
	public static final String SEGMENT = "环节:";
	public static final String DEALER = "处理人:";
	public static final String LATERSEGMENT = "后续环节:";
	public static final String RECEIVEMESSAGE = "请选择接收人";


比如一些设置样式的,尽量不要每次用都创建set一下,比如:

			panelStyle.setStyle("title-text-style", "color=#1e3275 padding=5");//文字颜色

应该这样写比较合适:

		businessName.setClass("textDetailStyle");
		titleName.setClass("textDetailStyle");
		drafterName.setClass("textDetailStyle");
		telephone.setClass("textDetailStyle");
		drafteTime.setClass("textDetailStyle");
		drafteDepart.setClass("textDetailStyle");
		emergencyLevel.setClass("textDetailStyle");
		noticeType.setClass("textDetailStyle");
		





目录
相关文章
|
Arthas 监控 Java
Arthas vmtool(从 jvm 里查询对象,执行 forceGc)
Arthas vmtool(从 jvm 里查询对象,执行 forceGc)
860 16
|
数据采集 人工智能 编解码
算法系统协同优化,vivo与港中文推出BlueLM-V-3B,手机秒变多模态AI专家
BlueLM-V-3B是由vivo与香港中文大学共同研发的多模态大型语言模型,专为移动设备优化。它通过算法和系统协同优化,实现了高效部署和快速生成速度(24.4 token/s),并在OpenCompass基准测试中取得优异成绩(66.1分)。模型小巧,语言部分含27亿参数,视觉编码器含4000万参数,适合移动设备使用。尽管如此,低端设备可能仍面临资源压力,实际应用效果需进一步验证。论文链接:https://arxiv.org/abs/2411.10640。
646 9
|
缓存 算法 Java
JVM知识体系学习六:JVM垃圾是什么、GC常用垃圾清除算法、堆内存逻辑分区、栈上分配、对象何时进入老年代、有关老年代新生代的两个问题、常见的垃圾回收器、CMS
这篇文章详细介绍了Java虚拟机(JVM)中的垃圾回收机制,包括垃圾的定义、垃圾回收算法、堆内存的逻辑分区、对象的内存分配和回收过程,以及不同垃圾回收器的工作原理和参数设置。
1284 4
JVM知识体系学习六:JVM垃圾是什么、GC常用垃圾清除算法、堆内存逻辑分区、栈上分配、对象何时进入老年代、有关老年代新生代的两个问题、常见的垃圾回收器、CMS
|
存储 Java 程序员
Java中对象几种类型的内存分配(JVM对象储存机制)
Java中对象几种类型的内存分配(JVM对象储存机制)
425 5
Java中对象几种类型的内存分配(JVM对象储存机制)
|
缓存 Java
JVM对象引用
本次课程聚焦JVM对象引用,涵盖强引用、软引用、弱引用和虚引用。强引用是最常见的引用类型,确保对象不会被垃圾回收器回收,适用于需要确保对象存活的场景;软引用在内存不足时会被优先回收,常用于缓存;弱引用的对象随时可能被回收,适合临时对象;虚引用最弱,主要用于接收对象回收通知,进行资源清理。通过合理选择引用类型,可优化内存管理,避免内存泄露。
|
算法 Java
JVM进阶调优系列(3)堆内存的对象什么时候被回收?
堆对象的生命周期是咋样的?什么时候被回收,回收前又如何流转?具体又是被如何回收?今天重点讲对象GC,看完这篇就全都明白了。
|
存储 Java
JVM知识体系学习四:排序规范(happens-before原则)、对象创建过程、对象的内存中存储布局、对象的大小、对象头内容、对象如何定位、对象如何分配
这篇文章详细地介绍了Java对象的创建过程、内存布局、对象头的MarkWord、对象的定位方式以及对象的分配策略,并深入探讨了happens-before原则以确保多线程环境下的正确同步。
307 0
JVM知识体系学习四:排序规范(happens-before原则)、对象创建过程、对象的内存中存储布局、对象的大小、对象头内容、对象如何定位、对象如何分配
|
存储 监控 算法
(六)JVM成神路之GC基础篇:对象存活判定算法、GC算法、STW、GC种类详解
经过前面五个章节的分析后,对于JVM的大部分子系统都已阐述完毕,在本文中则开始对JVM的GC子系统进行全面阐述,GC机制也是JVM的重中之重,调优、监控、面试都逃不开的JVM话题。
1344 9
|
存储 缓存 算法
(五)JVM成神路之对象内存布局、分配过程、从生至死历程、强弱软虚引用全面剖析
在上篇文章中曾详细谈到了JVM的内存区域,其中也曾提及了:Java程序运行过程中,绝大部分创建的对象都会被分配在堆空间内。而本篇文章则会站在对象实例的角度,阐述一个Java对象从生到死的历程、Java对象在内存中的布局以及对象引用类型。
780 8
|
算法 Java
Java垃圾回收(Garbage Collection,GC)是Java虚拟机(JVM)的一种自动内存管理机制,用于在运行时自动回收不再使用的对象所占的内存空间
【6月更文挑战第18天】Java的GC自动回收内存,包括标记清除(产生碎片)、复制(效率低)、标记整理(兼顾连续性与效率)和分代收集(区分新生代和老年代,用不同算法优化)等策略。现代JVM通常采用分代收集,以平衡性能和内存利用率。
259 3

热门文章

最新文章