E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
JAVA提高
java的反射机制速度很慢_jvm 反射 invoke inflation机制 优化速度 反射效率比较慢的原因...
学习于:掘金小册juejin.im前面相关基础介绍:何柄融:java反射总结zhuanlan.zhihu.com何柄融:
Java提高
程序可扩展性--反射机制zhuanlan.zhihu.com然后这次在掘金小册
心理咨询师林博宇
·
2023-12-24 17:36
java的反射机制速度很慢
java 线程 状态 图_
Java提高
——多线程(一)状态图
操作系统中的进程和线程的概念进程是指一个内存运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程,比如windows下的一个运行的应用程序.exe就是一个进程。线程是指进程中的一个执行流,一个进程可以运行多个线程。如java.exe就可以运行很多个线程。线程总是属于某个进程,进程中的多个线程共享进程中的内存。操作系统中可以同时执行多个任务,每个任务就是进程;进程可以同时执
得名Pro
·
2023-11-27 21:35
java
线程
状态
图
Java提高
与实践
IO流IO流概述文件字节输入流:每次读取一个字节packagefileStream;importjava.io.*;publicclassHelloFileInputStream{publicstaticvoidmain(String[]args)throwsIOException{//创建文件字节输入流管道,与源文件接通//写法一//InputStreamis=newFileInputStrea
Moliay
·
2023-11-11 00:22
java
java
开发语言
Java提高
性能的50个优化,记得收藏
在JAVA程序中,性能问题的大部分原因并不在于JAVA语言,而是程序本身。养成良好的编码习惯非常重要,能够显著地提升程序性能。1.尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面:第一,控制资源的使用,通过线程同步来控制资源的并发访问;第二,控制实例的产生,以达到节约资源的目的;第三,控制数据共享
HDXxiazai
·
2023-10-30 16:19
开发
java
开发语言
性能优化
Java提高
篇——equals()与hashCode()方法详解
文章目录equals()方法详解hashcode()方法详解Hashset、Hashmap、Hashtable与hashcode()和equals()的密切关系java.lang.Object类中有两个非常重要的方法:publicbooleanequals(Objectobj)publicinthashCode()Object类是类继承结构的基础,所以是每一个类的父类。所有的对象,包括数组,都实现
优雅的心情
·
2023-10-21 16:03
#
java提高篇
java treeset原理_
Java提高
十七:TreeSet 深入分析
前一篇我们分析了TreeMap,接下来我们分析TreeSet,比较有意思的地方是,似乎有Map和Set的地方,Set几乎都成了Map的一个马甲。此话怎讲呢?在前面一篇讨论HashMap和HashSet的详细实现讨论里,我们发现HashSet的详细实现都是通过封装了一个HashMap的成员变量来实现的。这里,TreeSet也不例外。我们先看部分代码,里面声明了成员变量:privatetransien
木小允
·
2023-10-14 13:05
java
treeset原理
Android 使用SpannableStringBuilder避免Native内存增长,结合Rx
Java提高
文本显示性能
在Android开发中,如果在应用程序中使用setText()方法来设置大量文本,可能会导致Native内存增长。这是因为setText()方法会在Native层创建一个新的字符串对象来存储文本内容,而这些字符串对象可能会在Java层被垃圾回收器回收,但在Native层仍然存在,从而导致Native内存增长。以下是一些可能的解决方法:使用SpannableStringBuilder:Spannab
全面解读
·
2023-06-08 14:52
Android
android
rxjava
Native
内存增长
(六):并发编程底层原理
它是一个
Java提高
的底层同步工具类,比如CountDownLatch、ReentrantLock,Semaphore,ReentrantReadWriteLock,SynchronousQueue,Futur
LJessie
·
2023-04-19 11:43
java提高
接口响应时间的办法_将一个接口响应时间从2s优化到 200ms以内的一个案例...
一、背景在开发联调阶段发现一个接口的响应时间特别长,经常超时,囧…本文讲讲是如何定位到性能瓶颈以及修改的思路,将该接口从2s左右优化到200ms以内。二、步骤2.1定位定位性能瓶颈有两个思路,一个是通过工具去监控,一个是通过经验去猜想。2.1.1工具监控就工具而言,推荐使用arthas,用到的是trace命令具体安装步骤很简单,大家自行研究。我的使用步骤是,先最终待研究的函数的最外层:tracec
多环芳烃
·
2022-02-22 10:05
java提高接口响应时间的办法
问题记录
关于Handler使用ThisHandlerclassshouldbestaticorleaksmightoccur警告处理
Java提高
篇——对象克隆(复制)
银弹星空
·
2022-02-17 01:21
静态代码块,构造代码块,构造函数执行执行顺序详解
Java提高
篇——静态代码块、构造代码块、构造函数以及Java类初始化顺序阅读目录构造函数构造代码块静态代码块Java类初始化顺序静态代码块:用staitc声明,jvm加载类时执行,仅执行一次构造代码块
zzj0990
·
2021-06-21 20:25
阿里P7讲解Java进阶之详解匿名内部类
在
java提高
篇—–详解内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客。
Java高级架构狮
·
2021-06-19 19:54
Java提高
篇(二)----LinkedList
一、LinkedList简介LinkedList继承了AbstractSequentialList类,实现了List,Deque,Cloneable,Serializable接口。二、LinkedList源码分析LinkedList底层是一个双向链表,支持大量的随机新增,删除操作,较ArrayList不支持大量随机的数据访问。2.1底层实现--双向链表/***内部类,链的节点*item节点元素*n
miss晴天
·
2021-06-08 16:10
内部类
一前言:在开发中常常遇到内部类,但对一些概念不清晰.做下梳理,并添加一些实践心得.其他很多场景都会使用内部类,我们在看到使用内部类或者想使用的时候要对其有很清晰的认识.编码清晰性很关键.参考
java提高
篇
四季树
·
2021-05-11 08:20
Java提高
篇(一)----ArrayList
一、ArrayList简介 ArrayList是实现了List接口的动态数组,元素允许为null,ArrayList是有序的。 注意,ArrayList实现不是同步的。如果多个线程同时访问一个ArrayList实例,而其中至少一个线程从结构上修改了列表,那么它必须保持外部同步。所以为了保证同步,最好的办法是在创建时完成,以防止意外对列表进行不同步的访问:Listlist=Collections
miss晴天
·
2021-05-02 22:46
java提高
篇----TreeSet
一、TreeSet定义我们知道TreeMap是一个有序的二叉树,那么同理TreeSet同样也是一个有序的,它的作用是提供有序的Set集合。通过源码我们知道TreeSet基础AbstractSet,实现NavigableSet、Cloneable、Serializable接口。其中AbstractSet提供Set接口的骨干实现,从而最大限度地减少了实现此接口所需的工作。NavigableSet是扩展
廖111
·
2020-12-26 21:18
java
java提高
篇----TreeSet
一、TreeSet定义我们知道TreeMap是一个有序的二叉树,那么同理TreeSet同样也是一个有序的,它的作用是提供有序的Set集合。通过源码我们知道TreeSet基础AbstractSet,实现NavigableSet、Cloneable、Serializable接口。其中AbstractSet提供Set接口的骨干实现,从而最大限度地减少了实现此接口所需的工作。NavigableSet是扩展
廖111
·
2020-12-26 21:18
java
做python的心得体会_实训python的心得体会
如何学习Python的一些总结C++、Java乃至C#都可以看做是同一类型的语言:C++还算灵活,但纷繁复杂的语法使得生产效率低下,
Java提高
了生产效率,却损失了灵活性;C#算是在生产效率和灵活性平衡之间做得不错了
weixin_39850152
·
2020-12-20 10:55
做python的心得体会
深入理解Java抽象类
基础部分内容差不多讲解完了,今天开始进入
Java提高
篇部分,这部分内容会比之前的内容复杂很多,希望大家做好心理准备,看不懂的部分可以多看两遍,仍不理解的部分那一定是我讲的不够生动,记得留言提醒我。
·
2020-09-21 13:18
Java提高
篇(十一):一个tomcat有几个jvm
1、一个tomcat是一个进程,其中有很多线程(与有多少个application无关)2、一个tomcat启动一个JVM,其中可以有很多application3、一个tomcat中部署的多个app,虽然同处一个JVM里,但是由于无法相互调用,所以也可以认为是分布式的Question:在一个servlet容器(比如说tomcat)里部署了3个.war,那么启动后会有几个JVM存在呢,是一个JVM,还
azhegps
·
2020-09-16 09:15
Java
提高篇
java提高
篇-----异常(一)
Java的基本理念是“结构不佳的代码不能运行”!!!!!大成若缺,其用不弊。大盈若冲,其用不穷。在这个世界不可能存在完美的东西,不管完美的思维有多么缜密,细心,我们都不可能考虑所有的因素,这就是所谓的智者千虑必有一失。同样的道理,计算机的世界也是不完美的,异常情况随时都会发生,我们所需要做的就是避免那些能够避免的异常,处理那些不能避免的异常。这里我将记录如何利用异常还程序一个“完美世界”。一、为什
iteye_3829
·
2020-09-16 03:03
java
java提高
篇(十二)-----equals()
equals()超类Object中有这个equals()方法,该方法主要用于比较两个对象是否相等。该方法的源码如下:publicbooleanequals(Objectobj){return(this==obj);}我们知道所有的对象都拥有标识(内存地址)和状态(数据),同时“==”比较两个对象的的内存地址,所以说使用Object的equals()方法是比较两个对象的内存地址是否相等,即若obje
chenssy
·
2020-09-16 01:14
java提高
篇(十四)-----字符串
点击打开链接可以证明,字符串操作是计算机程序设计中最常见的行为。一、String首先我们要明确,String并不是基本数据类型,而是一个对象,并且是不可变的对象。查看源码就会发现String类为final型的(当然也不可被继承),而且通过查看JDK文档会发现几乎每一个修改String对象的操作,实际上都是创建了一个全新的String对象。字符串为对象,那么在初始化之前,它的值为null,到这里就有
sinat_26960165
·
2020-09-15 08:15
java提高
篇—主线程等待分支线程执行后才执行的方法
最近打算去面试,查找一些面试题,看到京东的面试题中题,将查到的进行了总结,希望能对面试的同行有帮助。主线程等待分支线程执行后才执行方法有以下几种:1.使用countdownlatch解释:CountDownLatch是一个同步辅助类,通过它可以完成类似于阻塞当前线程的功能,即:一个线程或多个线程一直等待,直到其他线程执行的操作完成。缺点:事先必须知道要多少个线程,如果不知道有多少个线程,那么这个方
风麒麟
·
2020-09-14 16:46
java
线程
java提高
篇(二五)-----HashTable
原文出自:http://cmsblogs.com/?p=618。尊重作者的成果,转载请注明出处!个人站点:http://cmsblogs.com--------------------------------------------------------------------------------------------------------------------------------
chenssy
·
2020-09-14 06:53
java
数据结构与算法
Java提高
——多线程(一)状态图
操作系统中的进程和线程的概念进程是指一个内存运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程,比如windows下的一个运行的应用程序.exe就是一个进程。线程是指进程中的一个执行流,一个进程可以运行多个线程。如java.exe就可以运行很多个线程。线程总是属于某个进程,进程中的多个线程共享进程中的内存。操作系统中可以同时执行多个任务,每个任务就是进程;进程可以同时执
weixin_33711641
·
2020-09-13 23:02
java提高
篇 集合大家族
集合基本概念一,集合介绍集合是java提供的一种容器,容器就是用来存储数据的。集合与数组都是容器,他们的不同之处是1,数组的长度是固定的,集合的长度是可变的2,数组用来存放基本类型的数据,集合用来存放数据的引用二,常见的集合常用的集合有List集合,Set集合和Map集合,其中List与Set继承了collection接口,各接口还实现了不同的实现类三,集合类的继承关系Collection(收集)
八块腹肌的指头君
·
2020-09-13 20:21
Java提高
篇之常量池
一.相关概念1.什么是常量用final修饰的成员变量表示常量,值一旦给定就无法改变!final修饰的变量有三种:静态变量、实例变量和局部变量,分别表示三种类型的常量。2.Class文件中的常量池在Class文件结构中,最头的4个字节用于存储魔数MagicNumber,用于确定一个文件是否能被JVM接受,再接着4个字节用于存储版本号,前2个字节存储次版本号,后2个存储主版本号,再接着是用于存放常量的
wingooom
·
2020-09-11 04:38
java提高
java
常量池
在校大学生如何学习
java提高
自己?
如果你是在校的学生,或许还不知道如今社会中工作的竞争也多大,目前这个时代来讲,大学生毕业一定会面临失业,这里面的原因是“在校大学生并没有学到可以给公司创造价值的技能技术”,我们说现如今什么最值钱,就是“技术”。现在很多传统行业都不被年轻人所青睐,比如机电、电子、机械、建筑、会计这些专业,毕业之后只会去工厂,而现在的90后接触的都是信息化的东西,所以想发展互联网的会越来越多,现在本身就是互联网时代,
又是一个特殊的一天
·
2020-09-04 16:32
java基础
java
编程语言
大数据
java并发编程 —— AQS
什么是AQSAQS是AbustactQueuedSynchronizer的简称,它是一个
Java提高
的底层同步工具类,用一个int类型的变量表示同步状态,并提供了一系列的CAS操作来管理这个同步状态。
xuws
·
2020-08-23 10:34
JAVA提高
ZXING对图片中的二维码的识别率(第二弹)
背景继上一次使用做二维码识别,公司需要高识别率的二维码识别,但ZXING实在是太弱了,对于那种二维码占比很小、图片对比度不高的,识别率低的令人咋舌,后来引入了opencv,加上恶补了一些图像处理的基础知识,总算有一个能看的过去的识别率了(但公司最后还是决定去买现成的产品。。。被嫌弃!!!)思路上一篇文章说到了灰化、二值化处理图片来增加识别率,整体效果不是太明显,本次识别的主要思路是,先定位,再截取
strange先生
·
2020-08-23 09:17
ZXING
使用序列化实现对象拷贝【
Java提高
五】
我们知道在Java中存在这个接口Cloneable,实现该接口的类都会具备被拷贝的能力,同时拷贝是在内存中进行,在性能方面比我们直接通过new生成对象来的快,特别是在大对象的生成上,使得性能的提升非常明显。然而我们知道拷贝分为深拷贝和浅拷贝之分,但是浅拷贝存在对象属性拷贝不彻底问题。关于深拷贝、浅拷贝的请参考这里:渐析java的浅拷贝和深拷贝一、浅拷贝问题我们先看如下代码:在该应用程序中,首先定义
Java帮帮
·
2020-08-23 05:07
大数据技术思想入门(一):分布式存储特点
如果你不喜欢阅读文字的话,可以选择看视频讲解:大数据技术思想入门(一):分布式存储的特点/
Java提高
/Hadoop分布式存储在前面讲解大数据技术发展的文章中,我们可以得出以下的结论:大数据技术需要解决的问题就是对大量数据的存储和处理
tangweiqun
·
2020-08-22 17:00
大数据
Java
分布式
JAVA提高
篇(22)--StringReader和StringWriter的用法
使用字符串作为物理节点的字符输入输出流的用法,即StringReader和StringWriter的用法[java]viewplaincopypackagenet.nyist.io;importjava.io.IOException;importjava.io.StringReader;importjava.io.StringWriter;publicclassStringNodeTest{pub
白面小书生
·
2020-08-22 01:07
Java高级学习笔记
为什么输出是String而不是Object
前边说了我准备写一下关于
java提高
的专栏,要怎么提高呢,我觉得要想提高还得从问题入手,我想先把从国外网站上别人提问的问题拿到这里,最后再做一下总结和大家相互探讨一下。。
MarkSaas
·
2020-08-21 21:54
JavaSE
java晋级之路
对象
实例
java
数据结构
算法
新建了三个QQ群:入门、提高和老手群
JAVA入门QQ群:71066627欢迎使用JAVA在六个月以内的人进来
JAVA提高
群:71066665欢迎使用JAVA在六个月以上,2年以内的人进来JAVA老手群:26563912欢迎使用JAVA在2
老紫竹
·
2020-08-21 19:10
其它
Set集合之EnumSet
*老紫竹
JAVA提高
教程(5)-认识Set集合之EnumSet。9.*枚举set中所有键都必须来自单个枚举类型10.*该枚举类型在创建set时显式或隐
weixin_33858485
·
2020-08-19 21:35
Java提高
篇 —— Java关键字之final的几种用法
一、前言在java的关键字中,static和final是两个我们必须掌握的关键字。不同于其他关键字,他们都有多种用法,而且在一定环境下使用,可以提高程序的运行性能,优化程序的结构。下面我们来了解一下final关键字及其用法。二、final关键字在java中,final的含义在不同的场景下有细微的差别,但总体上来说,它指的是“这是不可变的”。不想被改变的原因有两个:效率、设计。使用到final的有三
蹲街式等待
·
2020-08-18 12:30
Java提高篇
Java基础
数据结构
JAVA基础提高
java提高
篇(一)-----理解java的三大特性之封装http://blog.csdn.net/chenssy/article/details/12757911
java提高
篇(二)-----理解java
CODE男孩
·
2020-08-15 02:40
JAVA基础
java提高
1、在java中使用Comparable实现排序,类实现这个接口,重写equal和compareTo方法intindex1=list.indexOf(student);intindex2=Collections.binarySearch(list,student);按理说两者index是一致的,因为他们检索的是同一个对象,但是结果:index1=0index2=1原因:indexOf和binary
嘿hei
·
2020-08-15 02:20
java提高
篇(二)-----理解java的三大特性之继承
继承在讲解之前我们先看一个例子,该例子是前篇博文(
java提高
篇-----
chenssy
·
2020-08-09 07:03
【
java提高
】(19)---BigDecimal详解和精度问题
BigDecimal详解和精度问题一、背景在实际开发中,对于不需要任何准确计算精度的属性可以直接使用float或double,但是如果需要精确计算结果,则必须使用BigDecimal,例如价格、质量。为什么这么说,主要有两点1、double计算会有精度丢失问题2、在除法运算时,BigDecimal提供了丰富的取舍规则。(double虽然可以通过NumberFormat进行四舍五入,但是Number
雨点的名字
·
2020-08-03 22:00
java提高
篇(七)_关键字static 转自 http://cmsblogs.com
一、static代表着什么在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个“伪全局”的概念,在Java中static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,当然也可以修饰代码块。Java把内存分为栈内存和堆内存,其中栈内存用来存放一些基本类型的变量、数组和对象的引用,堆内存主要存放一些对象。在JVM加载一个类的时候,若该类存在static修饰的成员变量
weixin_30369087
·
2020-08-03 06:05
java提高
篇(十三)-----字符串
可以证明,字符串操作是计算机程序设计中最常见的行为。一、String首先我们要明确,String并不是基本数据类型,而是一个对象,并且是不可变的对象。查看源码就会发现String类为final型的(当然也不可被继承),而且通过查看JDK文档会发现几乎每一个修改String对象的操作,实际上都是创建了一个全新的String对象。字符串为对象,那么在初始化之前,它的值为null,到这里就有必要提下””
chenssy
·
2020-08-02 17:52
Java提高
—对象克隆(复制)/对象属性拷贝
对象克隆(复制)假如说你想复制一个简单变量。很简单:intapples=5;intpears=apples;不仅仅是int类型,其它七种原始数据类型(boolean,char,byte,short,float,double.long)同样适用于该类情况。但是如果你复制的是一个对象,情况就有些复杂了。假设说我是一个beginner,我会这样写:classStudent{privateintnumbe
May的博客
·
2020-07-31 19:24
Java
Java提高
篇——静态代码块、构造代码块、构造函数以及Java类初始化顺序
文章目录一、构造函数二、构造代码块三、静态代码块四、Java类初始化顺序①、对于一个类的情况②、对于继承情况分析静态代码块:用staitc声明,jvm加载类时执行,仅执行一次构造代码块:类中直接用{}定义,每一次创建对象时执行。执行顺序优先级:静态块,main(),构造块,构造方法。一、构造函数publicHelloA(){//构造函数}关于构造函数,以下几点要注意:对象一建立,就会调用与之相应的
code_Zbw
·
2020-07-31 15:04
Java
java
Java提高
篇(二七)-----TreeMap
原文出自:http://cmsblogs.com/?p=1013。尊重作者的成果,转载请注明出处!个人站点:http://cmsblogs.com-------------------------------------------------------------------------------------------------------------------------------
chenssy
·
2020-07-30 23:08
java提高篇
java提高篇
java
二叉树
红黑树
TreeMap
java提高
篇(四)-----抽象类与接口
接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法。抽象类与接口是java语言中对抽象概念进行定义的两种机制,正是由于他们的存在才赋予java强大的面向对象的能力。他们两者之间对抽象概念的支持有很大的相似,甚至可以互换,但是也有区别。一、抽象类我们都知道在面向对象的领域一切都是对象,同时所有的对象都是通过类来描述的,但是并不是所有的类都是来描述对象的。如果一个类没有足够的信息来描述一个
chenssy
·
2020-07-30 23:36
java提高篇
java
java提高篇
抽象类
接口
接口与抽象类【
Java提高
四】
接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法。抽象类与接口是java语言中对抽象概念进行定义的两种机制,正是由于他们的存在才赋予java强大的面向对象的能力。他们两者之间对抽象概念的支持有很大的相似,甚至可以互换,但是也有区别。一、抽象类我们都知道在面向对象的领域一切都是对象,同时所有的对象都是通过类来描述的,但是并不是所有的类都是来描述对象的。如果一个类没有足够的信息来描述一个
Java帮帮
·
2020-07-30 20:14
Java提高
篇——JVM加载class文件的原理机制
在面试java工程师的时候,这道题经常被问到,故需特别注意。1、JVM简介JVM是我们Javaer的最基本功底了,刚开始学Java的时候,一般都是从“HelloWorld”开始的,然后会写个复杂点class,然后再找一些开源框架,比如Spring,Hibernate等等,再然后就开发企业级的应用,比如网站、企业内部应用、实时交易系统等等,直到某一天突然发现做的系统咋就这么慢呢,而且时不时还来个内存
weixin_34248705
·
2020-07-30 17:02
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他