
java基础
文章平均质量分 79
主要记录一些java的基础知识相关的内容
T-OPEN
爱生活,爱技术,爱分享,希望多与同行交流,共建一个良好的开源技术氛围。
展开
-
Knife4j 2.2.X 版本 swagger彻底禁用
Knife4j 2.2.X 版本 swagger彻底禁用原创 2024-06-27 19:37:38 · 1473 阅读 · 0 评论 -
java多线程教程系列(二)——springboot@Async+@EnableAsync两步开启多线程,常见的多线程的应用场景以及@Async不生效的解决方案
java多线程教程系列(二)-------springboot@Async+@EnableAsync两步开启多线程,常见的多线程的应用场景以及@Async不生效的解决方案原创 2024-01-06 22:44:55 · 3041 阅读 · 0 评论 -
idea中使用Lombok 失效,@Slf4j 找不到符号的解决办法
idea中使用Lombok失效,@Slf4j 找不到符号的解决办法原创 2024-01-06 18:37:30 · 6512 阅读 · 5 评论 -
java多线程教程系列(一)Java线程休眠的5种方法
java多线程教程系列(一)Java线程休眠的5种方法 线程休眠的方法有几种?转载 2024-01-06 17:49:24 · 1462 阅读 · 0 评论 -
Java中正则表达式
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。原创 2023-07-25 08:57:36 · 770 阅读 · 0 评论 -
单例模式双重检验锁的判断是否为null的意义
单例模式双重检验锁的判断是否为null的意义转载 2021-01-03 20:47:55 · 548 阅读 · 0 评论 -
Synchronized的小总结
Synchronized的小总结原创 2020-06-27 20:08:24 · 280 阅读 · 0 评论 -
一篇文章搞定java的泛型
一篇文章搞定java的泛型原创 2020-06-07 22:58:07 · 280 阅读 · 0 评论 -
基本数据类型(如:int) 不属于object的子类为啥还能赋值给object呢?
基本数据类型(如:int) 不属于object的子类为啥还能赋值给object呢?原创 2020-03-29 15:21:42 · 4299 阅读 · 0 评论 -
java 比大小 ==和equals的区别
java 比大小 ==和equals的区别,什么时候用哪个?原创 2020-03-15 18:10:28 · 418 阅读 · 0 评论 -
Synchronized方法锁、对象锁、类锁区别
Synchronized方法锁、对象锁、类锁区别转载 2020-03-03 15:23:59 · 2761 阅读 · 0 评论 -
java递归算法的理解,经典算法,优缺点
本文将对递归的思想以及优缺点经典案例进行解析原创 2019-12-19 16:25:31 · 1439 阅读 · 0 评论 -
java序列化总结 Serializable接口,serialVersionUID
1.什么是序列化机制对象序列化机制允许把内存中的Java对象转换成平台无关的二进制流,从而允许把这种二进制流持久地保存在磁盘上,或通过网络将这种二进制流传输到另一个网络节点。当其它程序获取了这种二进制流,就可以恢复成原来的Java对象。2.对象流ObjectInputStream 和 ObjectOutputStream作用:用于存储和读取基本数据类型数据或对象的处理流。它的强大之处就是可...原创 2019-11-08 10:56:47 · 998 阅读 · 0 评论 -
HashMap的底层原理jdk1.7和jdk1.8的实现的区别
HashMap的底层原理jdk1.7和jdk1.8的实现的区别原创 2019-11-06 15:34:33 · 1734 阅读 · 0 评论 -
值传递还是引用传递的第二篇
针对java中值传递和引用传递的问题,有的人说java里面只存在值传递,有的人说java里面既存在值传递也存在引用传递。其实只是自身所在角度不同,原理也是很类似的。下面我们分别来看一下。一.java中的值传递的问题指的是在方法调用时,传递的参数是按值的拷贝传递。示例如下:public static void main(String[] args) { int a=1; ...原创 2019-11-04 16:44:15 · 144 阅读 · 0 评论 -
值传递还是引用传递(int,String,引用类型)
String是值传递还是引用传递今天上班时,同事发现了一个比较有意思的问题。他把一个String类型的参数传入方法,并在方法内改变了引用的值。 然后他在方法外使用这个值,发现这个String还是之前的值,并没有改变。这里要向大家介绍一下,大家都知道java在传参时分为值传递 和 引用传递 。参数为基本类型时是值传递, 参数为封装类型时是引用传递。例如:1. 基本类型参数public cla...原创 2019-10-29 09:19:39 · 936 阅读 · 0 评论 -
java多线程
原创 2019-10-28 16:15:45 · 135 阅读 · 0 评论 -
java异常笔记
原创 2019-10-28 16:09:16 · 169 阅读 · 0 评论 -
常量应该封装到常量类,常量接口,还是枚举类中?
前言之前项目中响应前台的接口中会用到一些公共常量。这个时候就比较纠结,常量到底是封装到哪里比较好呢,因为以前写的很多代码不怎么规范,而且有时候常量用到的不算太多太集中,所以就哪里用到哪个类上去声明一个出来,这样虽然很方便,但是统一维护起来,项目做大了,有些时候你要引用一个你记得你明明声明过的常量,却找半天都找不到,而且后期需要对常量中的内容进行一些修改的时候,维护起来也十分不方便,代码整体结构也...转载 2019-10-23 09:31:08 · 965 阅读 · 1 评论 -
java枚举的使用
1. 本文主要内容2. 什么时候使用枚举呢?3.枚举类的实现3.1 jdk1.5之前的自定义枚举类的实现3.2 使用enum定义枚举类3.3 enum中的主要方法实现接口的枚举类...原创 2019-10-22 17:45:54 · 189 阅读 · 0 评论 -
一篇文章搞定java8新特性
java的新特性简介速度更快代码更少(增加了新的语法 Lambda 表达式)强大的 Stream API便于并行最大化减少空指针异常 Optional其中最为核心的为 Lambda 表达式与Stream API主要内容Lambda 表达式函数式接口方法引用与构造器引用Stream API接口中的默认方法与静态方法新时间日期 API其他新特性1. Lambda...原创 2019-10-19 15:14:17 · 347 阅读 · 0 评论 -
Java中的 Comparable 与 Comparator的区别以及使用场景
Comparable 的位置:java.lang.Comparable;Comparator的位置: java.util.Comparator;Collections.sort() 和 Arrays.sort()方法可以对Object数组进行排序,但是这种方法排序要求对象所在的类必须实现Comparable接口,此接口用于指定排序规则import java.util.ArrayList;i...转载 2019-10-17 15:21:41 · 656 阅读 · 0 评论 -
一篇文章搞懂JVM
1.jvm基础知识2.jvm内存管理3.GC相关知识4. 其他jvm相关面试题转载 2019-06-30 22:44:28 · 358 阅读 · 0 评论 -
拷贝相同属性的两个对象的属性-BeanUtils和PropertyUtils以及区别
使用这两个工具类需要引入的maven jar包依赖<dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>1.9.3</version&...原创 2019-06-27 10:29:17 · 3694 阅读 · 0 评论 -
搞定 JVM 垃圾回收就是这么简单
常见面试问题:如何判断对象是否死亡(两种方法)。简单的介绍一下强引用、软引用、弱引用、虚引用(虚引用与软引用和弱引用的区别、使用软引用能带来的好处)。如何判断一个常量是废弃常量如何判断一个类是无用的类垃圾收集有哪些算法,各自的特点?HotSpot 为什么要分为新生代和老年代?常见的垃圾回收器有那些?介绍一下CMS,G1收集器。Minor Gc ...转载 2019-06-30 22:01:49 · 327 阅读 · 0 评论 -
23种设计模式全解析
一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。其实...转载 2019-04-24 17:39:32 · 950 阅读 · 0 评论 -
Nginx的是什么?干什么用的?
Nginx的产生没有听过Nginx?那么一定听过它的"同行"Apache吧!Nginx同Apache一样都是一种WEB服务器。基于REST架构风格,以统一资源描述符(Uniform Resources Identifier)URI或者统一资源定位符(Uniform Resources Locator)URL作为沟通依据,通过HTTP协议提供各种网络服务。然而,这些服务器在设计之初受到当时环境的...转载 2019-04-29 11:49:51 · 600 阅读 · 0 评论 -
Nginx和Tomcat的区别
nginx和tomcat的区别web上的server都叫web server,但是大家分工也有不同的。nginx常用做静态内容服务和代理服务器(不是你FQ那个代理),直面外来请求转发给后面的应用服务(tomcat,django什么的),tomcat更多用来做做一个应用容器,让java web app跑在里面的东西,对应同级别的有jboss,jetty等东西。但是事无绝对,nginx也可以通过...原创 2019-04-29 11:36:14 · 41216 阅读 · 0 评论 -
switch-case与if else的区别和联系以及效率
switch case与if else的效率问题1.1 .switch case与if else的区别:switch case会生成一个跳转表来指示实际的case分支的地址,而if…else却需要遍历条件分支直到命中条件,1.2. switch case的优缺点(1)switch case的优点:当分支较多时,用switch的效率是很高的。因为switch是确定了选择值之后直接跳转到那个...转载 2019-04-24 10:00:00 · 10360 阅读 · 2 评论 -
内存泄漏和内存溢出的区别和联系(java)
1.内存泄漏(memory leak)内存泄漏是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄漏似乎不会有大的影响,但内存泄漏堆积后的后果就是内存溢出。2.内存溢出(out of memory 简称:OOM)指程序申请内存时,没有足够的内存供申请者使用,或者说,给了你一块存储int类型数据的存储空间,但是你却存储long类型的数据,那么结果就是内存不够用,此时就会报错OOM,即所谓...转载 2019-04-18 19:16:28 · 672 阅读 · 1 评论 -
Java中的内部类(成员内部类、静态内部类、局部内部类、匿名内部类)
Java中的内部类(成员内部类、静态内部类、局部内部类、匿名内部类) 我们先看这样一段话:人是由大脑、肢体、器官等身体结果组成。而组成我们人体的心脏它也有自己的属性和行为(血液、跳动),显然,此处不能单方面用属性或者方法表示一个心脏了,而需要一个类,但是这个类要依赖于人这个类存在(因为心脏不能脱离人体而存活,当然不考虑现今社会的发达科技,只从正常情况下来说),所心脏以需要写在人类的内部...原创 2019-04-22 21:07:50 · 233 阅读 · 0 评论 -
继承和实现的区别和联系
面向对象三个特征:封装、继承、多态。继承:如果多个类的某个部分的功能相同,那么可以抽象出一个类出来,把他们的相同部分都放到父类里,让他们都继承这个类。实现:如果多个类处理的目标是一样的,但是处理的方法方式不同,那么就定义一个接口,也就是一个标准,让他们的实现这个接口,各自实现自己具体的处理方法来处理那个目标第一、联系继承和接口都能实现代码重用,提高开发效率。提现了实物的传递性,继承关系达到...原创 2019-04-22 18:00:18 · 4972 阅读 · 5 评论 -
java的堆和栈
JAVA在程序运行时,在内存中划分5片空间进行数据的存储。分别是:1:寄存器。2:本地方法区。3:方法区。4:栈。5:堆。基本,栈stack和堆heap这两个概念很重要,不了解清楚,后面就不用学了。以下是这几天栈和堆的学习记录和心得。得些记录下来。以后有学到新的,会慢慢补充。 一、先说一下最基本的要点基本数据类型、局部变量都是存放在栈内存中的,用完就消失。new创建的实...原创 2019-04-17 20:27:00 · 262 阅读 · 0 评论 -
java中的类修饰符、成员变量修饰符、方法修饰符
类修饰符:public(访问控制符),将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。abstract,将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现。final,将一个类生命为最终(即非继承类),表示他不能被其他类继承。friendly,默认的修饰符,只有在相同包中的对象才能使用这样的类。成员变量修饰符:public(公共访...转载 2019-04-22 17:08:47 · 1385 阅读 · 0 评论 -
java获取文件名(前缀和后缀以及全名)
package com.ratel.test;import java.io.File;/** * @业务描述: * @package_name: com.ratel.test * @project_name: ssm * @author: ratelfu@qq.com * @create_time: 2019-04-17 14:42 * @copyright (c) rat...原创 2019-04-17 18:11:05 · 10724 阅读 · 4 评论 -
史上最全map的5种遍历方式
关于java中遍历map具体哪五种方式,请看下文详解吧。方式一 这是最常见的并且在大多数情况下也是最可取的遍历方式。在键值都需要时使用。Map&lt;Integer, Integer&gt; map = new HashMap&lt;Integer, Integer&gt;(); for (Map.Entry&lt;Integer, Integer&gt; entry : map.entry...原创 2019-01-03 16:10:36 · 1157 阅读 · 0 评论 -
list循环删除元素中的坑
public static void main(String[] args) { List<String> list = new ArrayList<String>(); list.add("1"); list.add("2"); list.add(&qu转载 2018-12-19 15:21:47 · 2722 阅读 · 0 评论 -
一篇搞懂java序列化Serializable
序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程。一、序列化和反序列化的概念把对象转换为字节序列的过程称为对象的序列化。把字节序列恢复为对象的过程称为对象的反序列化。原创 2018-11-30 16:44:40 · 7291 阅读 · 2 评论 -
16/32/64位平台下char、short、int、long、指针等数据类型分别占多少字节,操作系统可以使用的最大内存空间为多大?
数据类型 16位平台 32位平台 64位平台 char 1(个字节) 1 1 short 2 2 2 int 2...转载 2018-11-30 14:15:57 · 1490 阅读 · 0 评论 -
try-catch-finally-return 的执行顺序
结论:1、不管有没有出现异常,finally块中代码都会执行;2、当try和catch中有return时,finally仍然会执行;3、finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值保存起来,不管finally中的代码怎么样,返回的值都不会改变,任然是之前保存的值),所以函数返回值是在finally执行前确定的;4、finally中最好...原创 2018-11-17 22:38:02 · 884 阅读 · 0 评论