Java反射的用途系列一

Java反射的用途系列一

Java系列 4年前 (2020-10-23) 浏览: 298 评论: 0

Java反射提供了检查和修改应用程序运行时行为的能力。Java中的反射是核心Java的前沿课题之一。使用java反射,我们可以在运行时检查类、接口、枚举,获得它们的结构、方法和字段信息,即使类在编译时是不可访问的。我们还可以使用反射来实例化一个对象,调用它的方法,更改字段值。 Java中的反射 Java中的反射是一个非常强大的概念,它在普通编程中用处不大,但它是大多数Java、J2EE框架的主干。

Java8里的方法引用

Java8里的方法引用

Java系列 3年前 (2021-06-28) 浏览: 291 评论: 0

方法引用是Java8中用于调用方法的lambda表达式的简写表示法。例如: 如果lambda表达式如下: str -> System.out.println(str) 然后可以用如下方法引用替换它: System.out::println 在方法引用中使用 :: 运算符将类或对象与方法名分开(我们将通过示例来了解这一点)。 四种方法引用 1.对象实例方法的方法引用–object::insta

Java中的超高速垃圾收集器

Java中的超高速垃圾收集器

Java系列 3年前 (2021-09-17) 浏览: 287 评论: 0

垃圾收集:有很多技术定义,但用外行术语来说,它只是从内存中收集未引用或未使用(垃圾)对象并有效利用应用程序可用内存的一种自动化方法。 从这里开始,让我们节省一些空间,并使用“GC”作为垃圾收集的缩写。 GC的发展 在java之前,用C或C++,我们必须使用MalCube()/RealCube()/CalOrthAube(/For)/free()来显式分配或分配内存。因为我们必须显式地管理内存分配,

Java正则表达式API系列三

Java正则表达式API系列三

Java系列 2年前 (2022-05-23) 浏览: 284 评论: 0

Boundary Matchers Java regex API还支持边界匹配。如果我们关心在输入文本中匹配的确切位置,那么这就是我们要寻找的。在前面的示例中,我们关心的只是是否找到匹配项。 为了仅在文本开头所需的正则表达式为true时匹配,我们使用插入符号^。 此测试将失败,因为可以在开头找到文本dog: @Test public void givenText_whenMatchesAtBegi

跳表在Java中的实现

跳表在Java中的实现

Java系列 2年前 (2022-07-01) 浏览: 283 评论: 0

跳表是一种数据结构,用于借助连接到元素子序列的链表层次结构来存储元素的排序列表。跳表允许以有效的方式处理项目查找。跳表是一种概率数据结构,这意味着它跳过整个列表中的几个元素,因此称为跳表。我们可以将跳表作为链表的扩展版本。与链表允许插入、删除和搜索元素的方式类似,跳表也允许搜索元素、从列表中删除元素和插入元素。它将包含一个基本列表,其中包含一组元素,这些元素将维护后续元素的链接层次结构。 语法:

Java中的逃逸分析

Java中的逃逸分析

Java系列 2年前 (2022-02-11) 浏览: 278 评论: 0

底层的CPU优化对我们的应用有影响。此外,它们证明了大多数程序员的错觉是错误的。是的,你使用的是高级语言。但这并不意味着所有这些抽象层都能完全屏蔽CPU。我在一个Java程序上演示了CPU缓存的效果。 CPU的发展速度比主存快得多。如今,CPU大部分时间都在等待。现代CPU可以在每个CPU周期执行多条指令。但如果它必须访问主内存,绕过三个缓存中的每一个,它必须等待大约100个周期。 Java中的逃

Java9中新增的Collector

Java9中新增的Collector

Java系列 2年前 (2022-05-09) 浏览: 274 评论: 0

Java 8中添加了收集器Collectors,这有助于将输入元素累积到诸如Map、List和Set等可变容器中。 在本文中,我们将探讨Java 9中添加的两个新收集器:Collectors.filtering 和 Collectors.flatMapping。flatMapping与收集器结合使用。通过提供智能元素集合进行分组。 Filtering Collector Collectors.fi

Java9的新特性

Java9的新特性

Java系列 3年前 (2021-01-27) 浏览: 268 评论: 0

Java9概述 Java9具有丰富的特性集。虽然没有新的语言概念,但是新的api和诊断命令肯定会引起开发人员的兴趣。 在本文中,我们将对一些新特性进行快速、高层次的研究;这里提供了新特性的完整列表。 模块化系统——Jigsaw项目 让我们从一个大问题开始——将模块化引入Java平台。 模块化系统提供类似于OSGi框架系统的功能。模块具有依赖性的概念,可以导出公共API并保持实现细节隐藏/私有。 这

HashSet的removals()方法注意事项

HashSet的removals()方法注意事项

Java系列 2年前 (2022-06-20) 浏览: 260 评论: 0

我有一个集合,实际上是一个HashSet。我想从中删除一些item…其中许多item可能不存在。事实上,在我们的测试用例中,“removals”集合中的所有项都不在原始集合中。这听起来——实际上也是——非常容易编码。毕竟,我们已经准备好了。removeAll来帮助我们,对吗? 让我们把它变成一个小测试。我们在命令行上指定“source”set的大小和“removals”集合的大小,并构建它们。so

Java Dumps

Java Dumps

Java系列 2年前 (2022-01-24) 浏览: 252 评论: 0

  Java Dumps是在虚拟机由于网络问题、内存错误或用户启动任何类型的按键组合而意外停止时错误创建的一些Java内核。通过调用合并到应用程序源代码中的Java转储API或通过命令行直接提供-Xdump:Java选项,可以轻松创建Java Dumps。Java Dumps通过提供一些有用的信息来帮助最终用户排除故障,并诊断当应用程序意外停止运行时发生的停止的根本原因。 语法 Java

Java中线程的生命周期

Java中线程的生命周期

Java系列 2年前 (2022-06-06) 浏览: 247 评论: 0

在本文中,我们将详细讨论Java中的一个核心概念——线程的生命周期。 我们将使用一个快速的图解,当然还有实用的代码片段来更好地理解线程执行期间的这些状态。 Java多线程 在Java语言中,多线程是由线程的核心概念驱动的。线程在其生命周期中会经历各种状态: Java中线程的生命周期 java.lang.Thread类包含一个静态枚举,它定义了它的潜在状态。在任何给定的时间点内,线程只能处于以下状态

Java10有什么新功能?

Java10有什么新功能?

Java系列 3年前 (2021-02-17) 浏览: 242 评论: 0

Java10概述 2018年3月,我们看到了Java10的最新半年版。 在本文中,我们将研究此版本中引入的重大更改,并讨论一些较小的改进,这些改进将使开发人员和操作人员的生活更轻松。 Java10:巨大的变化 Java 10中的两大故事是: 新的var关键字,就像你想象的任何一种新的语言结构一样 新的六个月发布周期 此外,开发人员将很高兴看到更多的API发展。此外,还有运行时改进、新的性能调优旋钮

理解Java类加载器

理解Java类加载器

Java系列 3年前 (2021-10-09) 浏览: 241 评论: 0

Class Loaders简介 Class Loaders类加载器负责在运行时将Java类动态加载到JVM(Java虚拟机)。此外,它们也是JRE(Java运行时环境)的一部分。因此,由于类加载器的存在,JVM不需要知道底层文件或文件系统就可以运行Java程序。 此外,这些Java类不会一次全部加载到内存中,而是在应用程序需要时加载。这就是类装入器出现的地方。它们负责将类加载到内存中。 在本文中,

如何在windows10上设置jdk环境变量?

如何在windows10上设置jdk环境变量?

Java系列 3年前 (2021-02-08) 浏览: 239 评论: 0

本文向你展示如何在Windows10上设置JAVA_HOME系统变量。 需要的工具: Windows10 JDK 1.8版 高级系统设置 在搜索框(Windows开始按钮旁边)中键入高级系统设置,单击查看高级系统设置。 环境变量 选择Advance选项卡,单击Environment Variables   添加JAVA_HOME 在系统变量中,单击新建。。。按钮添加一个新的JAVA_HO

Java中使用lambda表达式和函数编程示例

Java中使用lambda表达式和函数编程示例

Java系列 3年前 (2021-10-07) 浏览: 234 评论: 0

第一个示例演示变量声明上下文中的lambda。它将lambda()->{System.out.println(“running”);}分配给可运行接口类型的变量r。第二个示例类似,但演示了赋值上下文中的lambda(到先前声明的变量r)。 第三个示例演示了return语句上下文中的lambda。它使用指定的文件扩展名参数调用getFilter()方法以返回java.io.FileFilter

Java中的按值调用和按引用调用

Java中的按值调用和按引用调用

Java系列 2年前 (2022-08-24) 浏览: 233 评论: 0

今天,我们将看一看基本但棘手的面试问题,Java中的值调用和引用调用。无论是初学者还是有经验的开发人员都会在面试中遇到这个问题。这是技术面试官最喜欢的问题。这篇文章不只是用一句话来回答你,而是试着解释它。 为什么按值调用和按引用调用??? 方法或函数可以用两种方式调用。一种是按值调用,另一种是根据引用调用,这两种方式通常根据作为输入或参数传递给它们的值的类型来区分。 在开始之前,让我澄清一件事,在

Clojure vs Java:少数据结构、多函数胜过多个单独类的优点

Clojure vs Java:少数据结构、多函数胜过多个单独类的优点

Java系列 2年前 (2022-05-25) 浏览: 225 评论: 0

在Clojure中,我们一次又一次地使用相同的数据结构,并在其上运行许多函数。另一方面,Java程序员为每一组数据创建一个唯一的类,并使用自己的“API”(getter、setter、return type等)来访问和操作数据。由于被迫在两个这样的“类API”之间进行翻译,我想与大家分享我的经验,从而在实践中证明格言中的真理 请注意,本文谈论的是数据和数据承载类,而不是“业务逻辑”,它将由Java

Java Streams:流操作及示例

Java Streams:流操作及示例

Java系列 3年前 (2021-10-03) 浏览: 216 评论: 0

正如我们在Java Streams:流创建中所学到的,流管道由源、零个或多个中间操作和一个终端操作组成。 我们还了解到,streams流是懒惰的;仅当终端操作启动时,才对源数据执行计算。 在本文中,我们将进一步探讨streams流操作。 streams流操作 流操作可以是中间操作,也可以是终端操作。中间操作产生另一个流。同样,终端操作也会产生结果或副作用。 让我们看看Java流提供的一些操作。 过

Java反射有什么用?

Java反射有什么用?

Java系列 4年前 (2020-10-21) 浏览: 212 评论: 0

反射概述 在本文中,我们将探讨Java反射,它允许我们检查或修改类、接口、字段和方法的运行时属性。当我们在编译时不知道它们的名称时,这尤其有用。 此外,我们可以实例化新对象、调用方法以及使用反射获取或设置字段值。 反射项目设置 要使用Java反射,我们不需要包括任何特殊的jar、任何特殊的配置或Maven依赖项。JDK附带了一组绑定在java.lang.reflect专门针对此目的的包装。 因此,

AREX Agent 技术实现细节分享

AREX Agent 技术实现细节分享

Java系列 10个月前 (08-07) 浏览: 204 评论: 0

原文地址:https://mp.weixin.qq.com/s/ObonOKMFftDCnFMs28ao7A 背景 在携程内部,随着公司业务规模和复杂度不断提高,研发测试团队面临着各种效能困境,尤其是在需要构造大量测试数据、写场景验证、发布频繁的场景下,业务的质量保障更是是重中之重。 为了满足公司持续交付的需求、并有效保障质量,我们基于流量录制回放的概念,在合法合规以及安全的前提下,开发了一款“用

登录

忘记密码 ?

切换登录

注册