ICode9

精准搜索请尝试: 精确搜索
  • 盘点JAVA中基于CAS实现的原子类, 你知道哪些?2022-12-31 17:30:16

    前言JDK中提供了一系列的基于CAS实现的原子类,CAS 的全称是Compare-And-Swap,底层是lock cmpxchg指令,可以在单核和多核 CPU 下都能够保证比较交换的原子性。所以说,这些原子类都是线程安全的,而且是无锁并发,线程不会频繁上下文切换,所以在某些场景下性能是优于加锁。本文就盘点一下JDK中

  • 关于5至10年经验丰富的开发人员的20个高级核心Java面试问题2022-12-30 17:01:42

    我将分享一些先进的核心问题和10个系统设计问题。Java面试问题,供有经验的程序员使用,也就是超过5年Java有编程经验的人,主要在核心。Java中,但JEE还有很好的工作。你好,朋友们,如果你准备下次的Java开发者面试并寻找高级开发者或团队负责人的职位,那么你将不得不努力准备。一旦你成为一个

  • 如果你想用 Java Spring 框架编写项目,你应该从哪里开始?2022-12-30 16:22:38

    果您想学习如何使用 Java 和 Spring 框架构建项目,可以采取以下几个步骤开始: 确保您对 Java 有基本的了解:在开始使用 Spring 之前,拥有坚实的 Java 编程语言基础非常重要。如果您是 Java 新手,您可能希望从学习基础知识开始,例如变量、数据类型、循环和控制结构。 学习 Spring 框架的

  • 03.关于线程你必须知道的8个问题(中)2022-12-26 18:34:39

    我们一起学习了如何创建线程,以及Java中线程状态,那么今天就来学习Thread类的核心方法。Tips: Java及JVM源码基于Java 11 JVM源码仅展示关键内容,另附Open JDK链接 文末附Java方法使用Demo的Gitee地址Thread.start和Thread.run上一篇中我们已经知道,Thread.run实际上是来自Runnable接口,

  • JDK中自带的JVM分析工具2022-12-05 23:18:03

    一、业务背景对于分布式架构中的文件服务来说,由于涉及大量的IO流操作,很容易引发JVM的相关异常,尤其是内存溢出的问题;在最近的一次版本迭代中,真实的业务处理场景和上述几乎一致,由于在文件服务中添加批量处理的动作,直接唤醒了隐藏许久的BUG,就是最常见的内存溢出;问题的起因:在word文档完

  • 如何使用 React 测试库自信地编写单元测试2022-12-02 18:54:23

    在教学中,我们将要学习怎么应用TestingLibrary坦然地撰写单元测试卷,这是一个比较流行的用以撰写单元测试卷的React测试库。 让我们开始吧。 如果你想重新开始学习培训React测试库,并想学习怎么使用方式部件(包含挂勾、仿真模拟API启用)坦然地检测全部应用软件,并设定测试覆盖率,那你就要

  • c#和java的区别_C#和java的语法区别2022-12-02 18:09:54

    根据近几天,看java短视频,总结了一下java与C#的那一部分词法差别。 1.基本类型 Java是由byte,short,int,long,float,dboule构成,全部种类都是有一定图形的。 C#除了这个之外,也包括sbyte(有标记)uint,ulong等,还有decimal(java里没有) java中的Byte是从-128到127(有标记),而C#中的Byte是0

  • java基础学习:java中的反射2022-12-01 17:35:20

    一、什么是java反射什么是 java 的反射?说到反射,写这篇文章时,我突然想到了人的”反省“,反省是什么?吾一日三省吾身,一般就是反思自身,今天做了哪些对或错的事情。java 的反射,我觉得有同样的思想。当然 java 反射要“反思”的是 java 程序在运行时类自己的信息,它获

  • Java lambda表达式基本使用2022-11-30 16:34:10

    1 本质 lambda表达式本质上是对匿名内部类实例的一种简化写法。1.1 案例有以下List<Integer>对象:List<Integer> list = Arrays.asList(1, 3, 5, 7, 9, 2, 4, 6, 8, 10);在对List进行从小大大排序时,会用到List#sort(Comparator)方法,需要传递实现Comparator接口的对象作为参数:default

  • Java提高篇——JVM加载class文件的原理机制2022-11-29 17:13:27

    在面试java工程师的时候,这道题经常被问到,故需特别注意。1、JVM 简介  JVM 是我们Javaer 的最基本功底了,刚开始学Java 的时候,一般都是从“Hello World ”开始的,然后会写个复杂点class ,然后再找一些开源框架,比如Spring ,Hibernate 等等,再然后就开发企业级的应用,比如网站、

  • Java基础重点知识点《异常02》2022-11-29 15:56:40

    1.异常的细节理论知识1.1编译时异常还有其他名字: 受检异常:CheckedException 受控异常 1.2运行时异常还有其它名字: 未受检异常:UnCheckedException 非受控异常 1.3再次强调:所有异常都是发生在运行阶段的。1.4Java语言中对异常的处理包括两种方式:第一种方式:在方法声明的位置上,使用thro

  • java开发环境的搭建及配置2022-11-29 15:49:44

    JDK简介(java Development kit)是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具,必须安装JDK才能使用java语言。直接点击下载自己对应的版本到自己电脑文件夹即可。安装如何

  • volatile和synchronized的底层实现原理2022-11-13 13:21:02

    一:volatile关于volatile的功能无非是两个: 1:保证保证线程间变量的可见性 2:防止指令重排序 下面我们就从字节码层面,JVM层面,CPU层面来解析是如何做到的。1:字节码层面首先编写一个很简单的类:public class TestVolatile { int i; volatile int j;}编译并查看字节码: 由此可知:在字节

  • 【JVM】关于JVM,你需要掌握这些 | 一文彻底吃透JVM系列2022-11-05 13:41:57

    【JVM】关于JVM,你需要掌握这些 | 一文彻底吃透JVM系列 JDK 是什么? JDK 是用于支持 Java 程序开发的最小环境。 Java 程序设计语言 Java 虚拟机 Java API类库 JRE 是什么? JRE 是支持 Java 程序运行的标准环境。 Java SE API 子集 Java 虚拟机 Java历史版本的特性? Java Version SE

  • 序列化和反序列化2022-09-16 17:00:23

    一、定义 序列化:是指把对象转换为字符串的过程,所用的方法是JSON.stringify(); 反序列化:是指把字符串转换为对象的过程,所用的方法是JSON.parse() ; 二、优点 1.可以将对象转为字节流存储到硬盘上,当JVM停机的话,字节流还会在硬盘上默默等待,等待下一次JVM的启动,把序列化的对象,通过反序列

  • 报错:JCE cannot authenticate the provider BC2022-09-16 14:31:47

    1.报错 用公司的平台加载授权文件的时候报:JCE cannot authenticate the provider BC错误. 2.解决: 1. 找到 java.security 在jvm安装地方 /path_to_your_jvm/jre/lib/security 2. 添加 security.provider.9=org.bouncycastle.jce.provider.BouncyCastleProvider例如: security.p

  • tomcat jvm 内存配置2022-09-16 09:02:35

    配置tomcat调用的虚拟机内存大小 (1)直接设置tomcat   Linux   修改TOMCAT_HOME/bin/catalina.sh   位置cygwin=false前。   JAVA_OPTS="-server -Xmx10240M -Xms512M -XX:MaxNewSize=512m -XX:MaxPermSize=512m -XX:-UseGCOverheadLimit" (仅做参考,具体数值根据自己的

  • Java基础-12022-09-16 01:30:31

    1:java为什么能跨平台; Java之所以能跨平台,是因为java虚拟机(JVM)能跨平台。 因为Java程序编译之后的代码不是能被硬件系统直接运行的代码,而是一种“中间码”——字节码。然后不同的硬件平台上安装有不同的Java虚拟机(JVM),由JVM来把字节码再“翻译”成所对应的硬件平台能够执行的代

  • JVM 运行时数据区 堆和方法区2022-09-14 17:01:56

    2、运行时数据区 哔哩哔哩 尚硅谷视频 宋红康老师 2.5、堆 堆的核心概述 一个JVM实例只存在一个堆内存,堆也是Java管理内存的核心区域 Java 堆区在JVM启动的时候即被创建,其空间大小也就确定了, 是JVM管理的最大一块内存空间 堆内存的大小是可以调节的 《Java虚拟机规范》规定,堆

  • SpringBoot学习笔记(八)——外部配置及其优先级2022-09-14 16:01:09

    现在我们用最原始的方式来进行属性绑定。 将service类的代码修改如下: @Component @ConfigurationProperties public class UserService {    private String password;    public String test() {        return password;   }    // setter getter } 我们有五

  • JavaBeans:JVM内存、面向对象三大特性2022-09-12 20:33:08

    内存管理:由JVM来管理 堆: 存储的是new出来的对象(包括实例变量、数组的元素) 垃圾:没有任何引用所指向的对象 垃圾回收器(GC)不定时到内存中清扫垃圾,回收过程是透明的(看不到的),并不一定一发现垃圾就立刻回收,通过调用System.gc()可以建议虚拟机尽快调度GC来回收 实例变量

  • 01_Java前提知识2022-09-09 20:33:26

    Java前提知识 Java三大版本 JavaSE:标准版(桌面程序;控制台开发...) JavaME:嵌入式开发(手机;小家电...) JavaEE:企业级开发(Web端,服务器开发...) JDK、JRE、JVM JDK:Java Development Kit JRE:Java Runtime Environment JVM:Java Virtual Machine JDK包含JRE包含JVM Java开发环境搭建

  • Java面试题 2022 (JVM篇)2022-09-08 23:32:31

    1. 什么是JVM? JVM全称是Java VirtualMachin ,中文称为Java虚拟机 。 JVM是Java程序运行的底层平台,与Java支持库一起构成了Java程序的执行环境。 分为JVM规范和JVM实现两个部分。简单来说,Java虚拟机就是指能执行标准Java字节码的虚拟计算机。 1.1 请问JDK与JVM有什么区别? 现在的J

  • JVM:第一章:类加载机制深度解析2022-09-05 18:00:08

    JVM:第一章:类加载机制深度解析 Java 源代码执行流程 解释: 启动虚拟机 (C++负责创建) 【windows : bin/java.exe调用 jvm.dll Linux : java 调用 libjvm.so 】 创建一个引导类加载器实例 (C++实现) C++ 调用Java代码,创建JVM启动器,实例sun.misc.Launcher 【这货由引导加载器负责加载创建

  • 一、Java入门2022-09-05 12:33:45

    一、java版本   1、过渡版本    2、长期支持版本 LTS (Java8 使用最广) 二、java 用于做什么 (java的分类)   1、JavaSE 用于桌面应用的开发 (用户只要打开程序,程序的界面会让用户的短时间内找到他们所需要的功能,同时主动带领用户完成他们的工作,给用户最好的体验)   2、JavaME 用

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有