随笔分类 -  Java

摘要:什么是虚拟线程 首先,我们需要了解什么是虚拟线程。 在平时的开发过程中,我们所使用的多线程往往意味着平台线程。平台线程代表着JVM直接与操作系统交互,创建了一个一个的线程,并且在JVM中还要为这个线程单独开辟内存使用。一般在JVM中创建一个平台线程,开销大约在1M左右。为了避免创建线程和销毁线程带来 阅读全文
posted @ 2024-03-31 18:44 ryelqy 阅读(128) 评论(0) 推荐(0) 编辑
摘要:Jdk8中有好多新的特性,比如引入Lambda,简化代码的书写等等 我们先看一个关于Lambda的使用 /** * 输出list */ @Test public void test() { String[] array = {"aaaa", "bbbb", "cccc"}; List<String> 阅读全文
posted @ 2024-03-20 10:28 ryelqy 阅读(216) 评论(0) 推荐(0) 编辑
摘要:package com.best.buc.verification.constant; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.Setter; import java.util.ArrayList; 阅读全文
posted @ 2022-01-24 14:36 ryelqy 阅读(2626) 评论(0) 推荐(1) 编辑
摘要:一:为什么要学多线程 应付面试 :多线程几乎是面试中必问的题,所以掌握一定的基础知识是必须的。了解并发编程:实际工作中很少写多线程的代码,这部分代码一般都被人封装起来了,在业务中使用多线程的机会也不是很多(看具体项目),虽然代码中很少会自己去创建线程,但是实际环境中每行代码却都是并行执行的,同一时刻 阅读全文
posted @ 2021-03-06 15:32 ryelqy 阅读(315) 评论(0) 推荐(0) 编辑
摘要:@Table package com.websocket.demo.annotation; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotat 阅读全文
posted @ 2021-02-19 11:47 ryelqy 阅读(275) 评论(0) 推荐(0) 编辑
摘要:一、前言 在开发的过程中,我们有时候会遇到提供数据下载的功能,当数据量较大的时候,可能需要分开几个文件,然后再在后台打包成ZIP压缩文件,传送到前台。之前博客中有提及过如何用Java实现添加到压缩文件中,当时只讨论了如何单个文件添加压缩文件,这篇文章将讨论多文件压缩的问题。 二、多文件压缩 @Tes 阅读全文
posted @ 2021-02-06 18:58 ryelqy 阅读(995) 评论(0) 推荐(0) 编辑
摘要:有些需要在项目启动时执行的方法,如设置全局环境语言变量等,需要用到@PostConstruct注解,在此记录一下。 1.@PostConstruct说明 被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器调用一次,类似于Servlet的inti()方法。 阅读全文
posted @ 2021-01-23 14:02 ryelqy 阅读(465) 评论(0) 推荐(0) 编辑
摘要:一、结构特点 List和Set是存储单列数据的集合,Map是存储键值对这样的双列数据的集合; List中存储的数据是有顺序的,并且值允许重复;Map中存储的数据是无序的,它的键是不允许重复的,但是值是允许重复的;Set中存储的数据是无顺序的,并且不允许重复,但元素在集合中的位置是由元素的hashco 阅读全文
posted @ 2021-01-22 11:07 ryelqy 阅读(1569) 评论(0) 推荐(0) 编辑
摘要:1.如何使用线程池来创建线程? java中提供了一个静态工厂方法来创建不同的线程池: Executors 通过静态方法创建出的线程都实现了ExecutorService接口。常用的方法包括: newFixedThreadPool(int threads); 创建一个固定数目的线程池 newCache 阅读全文
posted @ 2020-12-14 15:15 ryelqy 阅读(764) 评论(0) 推荐(0) 编辑
摘要:出现的原因 当多条语句在操作同一个线程共享数据时,一个线程对多条语句只执行了一部分,还没有执行完,另一个线程参与进来执行。导致共享数据的错 示例 class Window implements Runnable{ private int ticket = 10; @Override public v 阅读全文
posted @ 2020-10-15 15:43 ryelqy 阅读(414) 评论(0) 推荐(0) 编辑
摘要:原文出处: 罗送军, List<? extends T>和List<? super T>之间的区别, http://blog.sina.com.cn/s/blog_12d2946100102wugm.html 阅读全文
posted @ 2020-09-26 12:39 ryelqy 阅读(380) 评论(0) 推荐(0) 编辑
摘要:一、类加载机制 上面两种加载类的方式说到底还是为了加载一个java类,因此需要先对类加载的过程进行一个简单的了解。我们写好的程序,然后run运行,过程可以直接看下面这张图: 往细了看大致分为5个阶段: (1)加载:java类运行时候会生成一个class字节码文件,加载的过程就是去我们的操作系统寻找这 阅读全文
posted @ 2020-09-07 11:01 ryelqy 阅读(418) 评论(0) 推荐(0) 编辑
摘要:在 Java 语言中,本质只有值传递,而无引用传递,解释和证明详见正文。 说到值传递和引用传递我们不得不提到两个概念:值类型和引用类型。 一、值类型 通俗意义上来说,所谓的值类型指的就是 Java 中的 8 大基础数据类型: 整数型:byte、int、short、long 浮点型:float、dou 阅读全文
posted @ 2020-09-03 15:38 ryelqy 阅读(332) 评论(0) 推荐(0) 编辑
摘要:起因:1.查看生产日志(巨大:大都是一两个GB),使用普通编辑器打开巨慢无比2.手写java工具类,使用main方法进行分割3.觉得工具类不人性化,就加入GUI4最后就想整合一个更加通用的工具,就想着把jar转换为exe文件 下载地址:https://download.csdn.net/downlo 阅读全文
posted @ 2020-02-23 18:44 ryelqy 阅读(1849) 评论(0) 推荐(0) 编辑
摘要:目录 1、静态代码块 ①、格式 ②、执行时机 ③、静态代码块的作用 ④、静态代码块不能存在任何方法体中 ⑤、静态代码块不能访问普通变量 2、构造代码块 ①、格式 ②、执行时机 ③、构造代码块的作用 3、构造函数 4、普通代码块 5、执行顺序 6、父类和子类执行顺序 在Java中,静态代码块、构造代码 阅读全文
posted @ 2020-02-05 15:28 ryelqy 阅读(156) 评论(0) 推荐(0) 编辑
摘要:Thread.yield( )方法: 使当前线程从执行状态(运行状态)变为可执行态(就绪状态)。cpu会从众多的可执行态里选择。 也就是说,当前也就是刚刚的那个线程还是有可能会被再次执行到的,并不是说一定会执行其他线程而该线程在下一次中不会执行到了。 示例如下: public class Yield 阅读全文
posted @ 2019-11-12 14:37 ryelqy 阅读(410) 评论(0) 推荐(0) 编辑
摘要:我们知道Integer是int的包装类,在jdk1.5以上,可以实现自动装箱拆箱,就是jdk里面会自动帮我们转换,不需要我们手动去强转,所以我们经常在这两种类型中随意写,平时也没什么注意 但Integer他是对象,我们知道 == 比较的是堆中的地址,但有个奇怪的事是, 如果 Integer a = 阅读全文
posted @ 2019-06-13 10:37 ryelqy 阅读(20386) 评论(1) 推荐(1) 编辑
摘要:1.super()和this()区别: super():调用父类无形参的构造方法; super(形参):调用父类中某个带形参的构造方法; this(形参):调用本类中另一种形式的构造方法; 注意:放在方法的首行; 2.super和this的区别: super.父类的成员变量; super.父类的方法 阅读全文
posted @ 2019-06-10 09:59 ryelqy 阅读(1974) 评论(0) 推荐(0) 编辑
摘要:问题出现: 即使对于一个经验丰富的开发人员来说,方法重载和方法覆盖的区别都能让他犹豫一下, 对于新手来说,经常容易弄混淆。 有没有比较深入浅出的理解方式,能让人过目不忘,用起来还能有条件反射般的速度呢? 其他人是怎么做的: 写类似比较的博客非常之多,无非也就是分开介绍,然后比较区别。 好像也有效果, 阅读全文
posted @ 2019-05-24 10:14 ryelqy 阅读(670) 评论(0) 推荐(0) 编辑
摘要:一、简介 牛顿迭代法(Newton's method)又称为牛顿-拉夫逊(拉弗森)方法(Newton-Raphson method),它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。 多数方程不存在求根公式,因此求精确根非常困难,甚至不可能,从而寻找方程的近似根就显得特别重要。方法 阅读全文
posted @ 2019-05-10 10:07 ryelqy 阅读(4321) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示