首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java性能优化技巧

    本文综合了各种Java性能优化的研究成果,涵盖从JDK到Java集合使用、场景用例到和工具。 1. 如果在静态构造器中有繁重的计算,也就是耗费CPU的逻辑代码,请检查其运行时间是否过度?...不要在多线程中共享一个 java.util.Random实例,将其包装在ThreadLocal中,Java7中使用java.util.concurrent.ThreadLocalRandom替代java.util.Random...如果你希望有快速的Base64编码器,使用Java 8的 java.util.Base64 14. 不要使用exception ,每个exception 启动需要1毫秒 15....使用Matcher 和 Pattern 替代String.matches, split, replaceAll, replaceFirst等方法。 20....22.Java 8中使用G1垃圾回收机制时,使用减少字符串重复配置: -XX:+UseG1GC -XX:+UseStringDeduplication。

    57730

    Effective Java(一)

    遗憾的是,JavaBeans 模式自身有着很严重的缺点 因为构造过程被分到了几个调用中,在构造过程中 Java Bean 可能处于不一致的状态。 类无法仅仅通过检验构造器参数的有效性来保证一致性。...I{0,3})$"); } 这个实现的问题在于它依赖string.matches方法。...虽然String.matches方法最易于查看一个字符串是否与正则表达式相匹配,但并不适合在注重性能的情形中重复使用。...避免使用终结方法和清除方法 总而言之,除非是作为安全网,或者是为了终止非关键的本地资源,否则请不要使用清除方法,对于在 Java 9 之前的发行版本,则尽量不要使用终结方法。...例如 InputStream、OutputStream 和 java.sql.Connection。客户端经常会忽略资源的关闭,造成严重的性能后果也就可想而知了。

    78010

    Effective-java-读书笔记之创建和销毁对象

    (Java的java.util.Collections). 返回对象的类型可以根据输入的参数而变化....Java 6开始提供了java.util.ServiceLoader.静态工厂方法的缺点:类如果不含public或者protected的构造器, 就不能被子类化....尽管如此, 它们确实也有特有的用处, 比如:java.lang.Math, java.util.Arrays把基本类型的值或数组类型上的相关方法组织起来; java.util.Collections把实现特定接口的对象上的静态方法组织起来...Boolean(String)在Java 9已经deprecated了.用string.matches()做字符串正则匹配检查: 重复使用会有性能问题, 因为每次都会创建一个Pattern对象. ->...例子: InputStream, OutputStream和java.sql.Connection上的close()方法; java.util.Timer的cancel()方法.Image.flush(

    60600

    Java技术体系------JDK、 JRE、 Java ME 、 Java SE 、Java EE

    ,Sun官方所定义的Java技术体系包括: Java程序设计语言 JavaAPI类库 运行于各个硬件平台上的虚拟机 Class文件格式 商业机构和开源社区的第三方Java类库 JDK:   包括Java...程序设计语言、JavaAPI类库、运行于各个硬件平台上的虚拟机,JDK是用于支持Java程序开发的最小环境; JRE: Java API类库中的Java SE API子集和Java虚拟机这两部分统称为...JRE与JDK的区别: JRE顾名思义是java运行时环境,包含了java虚拟机,java基础类库。是使用java语言编写的程序运行所需要的软件环境,是提供给想运行java程序的用户使用的。...JDK顾名思义是java开发工具包,是程序员使用java语言编写java程序所需的开发工具包,是提供给程序员使用的。...Java SE: 支持面向桌面级应用的JAVA平台,提供了完整的Java核心API,这个版本以前称为J2SE。

    3.3K41

    OMG,12 个精致的 Java 字符串操作小技巧,学它

    字符串可以说是 Java 中最具有代表性的类了,似乎没有之一哈,这就好像直播界的李佳琪,脱口秀中的李诞,一等一的大哥地位。...那这次,我就来盘点 12 个精致的 Java 字符串操作小技巧,来帮助大家提高一下下。...之所以造成这个混乱,有很多因素,比如说,Java 到底是值传递还是引用传递?字符串常量池是个什么玩意? 这次又不得不谈,虽然烦透了,但仍然要证明啊!...3)s1 = "沉默王三",Java 在字符串常量池中创建“沉默王三”这串字符的对象,并且把地址引用赋值给 s1,但 s2 仍然指向的是“沉默王二”那串字符对象的地址引用。...digitsOnlyString("123"); } private static void digitsOnlyString(String string) { if (string.matches

    57730

    【Java】01 初识 Java

    一、Java 简介 1.1 Java 发展史 —————— 选自 《 疯狂 Java 讲义(第四版)》    Java 语言的诞生具有一定的戏剧性,它并不是经过精心策划、制作,最后产生的划时代产品,从某个角度来看...这标志着 Java 已经吹响了向企业、桌面和移动三个领域进军的号角,标志着 Java 已经进入 Java2 时代,这个时期也是 Java 飞速发展的时期。   ...1.3 Java 相关概念 1.3.1 JVM    JVM 是 Java Virtual Machine( Java 虚拟机)的缩写,就是我们常说的java虚拟机。...Java 语言使用 Java 虚拟机屏蔽了与具体平台相关的信息,使得 Java 语言编译程序只需生成在 Java 虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。   ...Java 虚拟机本质上就是一个程序,当它在命令行上启动的时候,就开始执行保存在某字节码文件中的指令。Java 语言的可移植性正是建立在 Java 虚拟机的基础上。

    2.1K31

    Java面试——Java基础

    所有的 Java虚拟机实例必须在每个类或接口被 Java程序“首次主动使用”时才初始化它们。...八、java -> class -> 执行 ---- Java程序运行时,必须经过编译和运行两个步骤。首先将后缀名为.java的源文件进行编译,最终生成后缀名为.class的字节码文件。...Java.lang.ClassNotFoundException Java.lang.NoSuchMetodException Java.io.IOException Exception:一般分为 Checked...【1】Checked 异常:只有 java语言提供了 Checked异常,Java 认为 Checked异常都是可以被处理的异常,所以 Java程序必须显示处理 Checked异常。...【8】Date/Time API (JSR 310):Java 8 新的 Date-Time API (JSR 310)受Joda-Time的影响,提供了新的 java.time包,可以用来替代 java.util.Date

    3.5K33

    Java 回顾 ( Revisiting Java )

    最近在看一些工程代码,于是看了看设计模式,看设计模式之前发现Java是先修知识,又重新补了一遍Java,温故知新,获得一些新的体会。...本文不打算作为“Java知识点详细梳理”,“10分钟学会Java”之类的文章,仅作为博主自己的一个回顾,涉及的内容也无定法。...Java应该是目前用的最多的编程语言,以前觉得Java老要点点点(调用方法),变量名也很长,C++/Python很少代码写完的东西Java可能要写很多行…… 觉得挺麻烦的,不过Java风靡自有其风靡的理由...Java中最关键的概念是面向对象,面向对象最关键的东西就是类和对象,所有的Java程序都定义在类中,你不能像python那样,打开.py文件就开始写东西,就可以执行了,也不像C++,定义一个main函数即可运行...Reference *《Head First Java》

    2K20

    Java 异常|Java Exceptions

    本文是对以下内容的分析:Java异常设计,Java异常可以告诉什么,以及如何使用Java异常。 Java Exceptions Java Exception 是为处理异常应用程序行为而创建的类。...在本文中,我将解释如何使用 Java Exception 类以及如何在考虑现有 Java Exceptions 设计的情况下创建异常结构。...Java 异常概念是 Java 中的重要里程碑之一,每个开发人员都必须知道它。...Java 异常结构的信息量比你想象的要多 Java 异常的结构非常有用,可以告诉开发人员一组重要的事情(如果开发人员正确使用此结构)。...Java错误 Java Error case 代表异常情况。一旦出现错误,应用程序可能会关闭。 Java异常 与错误不同,Java 异常有机会从问题中恢复应用程序并尝试保持应用程序运行。

    4.1K40
    领券