Java基础
文章平均质量分 61
我橘子超酸
这个作者很懒,什么都没留下…
展开
-
24届java最新面经汇总,持续更新
面经原创 2023-03-11 10:29:37 · 476 阅读 · 1 评论 -
java中重载与重写
重载重写是非常基础的知识本文从 访问控制修饰符、返回值、方法名、参数列表四个方面对重载和重写进行解析原创 2022-11-05 22:02:16 · 602 阅读 · 0 评论 -
部署jar包命令详解
java -jar nohub输出重定向原创 2022-07-13 20:31:39 · 845 阅读 · 0 评论 -
java集合框架 | 熬丙
集合框架Java 集合框架看这一篇就够了Java 集合中「堆」是啥?别这样创建集合了,非常容易内存泄露HashMapHashMap面试官:HashMap 为什么线程不安全?万万没想到,HashMap默认容量的选择,竟然背后有这么多思考!?ConcurrentHashMapConcurrentHashMap & Hashtable(文末送书)我就知道面试官接下来要问我 ConcurrentHashMap 底层原理了ArrayL.原创 2022-05-25 12:21:08 · 227 阅读 · 0 评论 -
尚硅谷Java入门视频教程(在线答疑+Java面试真题)
Java核心技术原创 2022-05-10 19:18:41 · 6971 阅读 · 0 评论 -
UUID详解
源码分析: link.名词解释: link源码中注释/**A class that represents an immutable universally unique identifier (UUID). A UUID represents a 128-bit value.There exist different variants of these global identifiers. The methods of this class are for manipulating the L原创 2021-08-17 21:53:00 · 585 阅读 · 0 评论 -
synchronized关键字
目录使用方式作用范围原理Java对象组成锁在哪里?synchronized如何获取monitor对象?锁升级过程偏向锁为什么要引入偏向锁?偏向锁原理和升级过程轻量级锁为什么要引入轻量级锁?轻量级锁原理和升级过程正确加锁姿势众所周知并发编程的三大特性:可见性、原子性、有序性。而synchronized能够同时保证可见性、原子性、有序性。且在Java 6 版本对synchronized关键字进行种种优化后性能大增。因此在解决并发问题时会经常用到synchronized关键字。使用方式首先说一下如何使用s原创 2021-07-18 15:49:27 · 153 阅读 · 0 评论 -
volatile关键字
目录一、Java的内存模型计算机内存模型Java内存模型二、volatile的作用可见性有序性原子性并发编程的三大特性为:原子性、可见性、有序性,下面将从这三个特性来阐述volatile的作用,先说结论:volatile能够保证可见性和有序性,但不保证原子性。一、Java的内存模型要想搞明白volatile的作用,需要首先了解Java的内存模型。计算机内存模型首先从计算机CPU和内存说起。我们都知道CPU的速度非常快,而内存的速度远不如CPU,但CPU和内存之间需要进行频繁的数据交换,这样一来就降原创 2021-07-18 11:52:01 · 120 阅读 · 0 评论 -
关于java中接口中默认修饰符的一些思考
以下内容均为个人理解,若有不当之处望批评指正abstract interface AnimalInterface {/** * 属性:interface 中的属性默认且必须是 public static final 且必须被初始化 * 首先我们要清楚interface的创造初衷即能胜任作为和外部系统打交道的合同,就是接口是实现类的标准和规范。 * 明白了这点再来解释这三个修饰符 * public:既然接口的初衷就是作为和外部系统打交道的合同,我并不知道未来外部别人怎么用我原创 2021-07-15 10:35:25 · 2668 阅读 · 0 评论 -
面向对象的理解
均为个人理解,若有不严谨之处,望君指出!今天有幸和小组长交流了一些java基础知识,非常非常基础,但可能很多人没有深入思考过!面向对象的三大特性关于面向对象的特性:继承、封装、多态这三个特性众所周知,此外还有一个特性抽象,有部分人认为抽象也是面向对象的特性,但这不是普遍公认的,而且是有问题的。因为抽象无处不在(表达式抽象、控制抽象、数据抽象等等),普遍存在的东西只能说共性,不可称之为特性。虽然这么说,但接下来我们仍会讨论抽象这一特性(暂且称之为特性)。抽象、封装、继承、多态这四个特性环环相扣:首先原创 2021-07-14 22:29:09 · 94 阅读 · 0 评论 -
生成随机数的两种方式
代码为已知随机数生成方法 random(),能够生成1-7的随机数,求能够生成1-10随机数的方法random1参考链接random2参考链接package com.company.random;public class Random { //根据1-7的随机数方法,给出1-10的随机数方法 public static void main(String[] args) { for (int i = 0; i < 50; i++) {原创 2021-05-18 10:17:28 · 392 阅读 · 0 评论 -
ArrayList、LinkedList、HashMap线程不安全解决方案
方法1: Collections.synchronizedList(new LinkedList())Collections.synchronizedList(new LinkedList<>());Collections.synchronizedMap(new HashMap<>());方法2: LinkedList和ArrayList换成线程安全的集合,如CopyOnWriteArrayList,ConcurrentLinkedQueue…HashMap 换成 Co原创 2021-04-02 18:58:36 · 350 阅读 · 0 评论 -
HashMap相关问题
Q0:HashMap是如何定位下标的?A:先获取Key,然后对Key进行hash,获取一个hash值,然后用hash值对HashMap的容量进行取余(实际上不是真的取余,而是使用按位与操作,原因参考Q6),最后得到下标。Q1:HashMap由什么组成?A:数组+单链表,jdk1.8以后又加了红黑树,当链表节点个数超过8个(m默认值)且 数组长度需要大于64才会变成红黑树,(若知识链表节点个数超过8个会进行resize()操作),开始使用红黑树,使用红黑树一个综合取优的选择,相对于其他数据结构,红黑树的原创 2021-03-31 20:17:06 · 449 阅读 · 0 评论 -
Java中各类修饰符的使用总结(看完这篇就够了)
https://blog.csdn.net/u012723673/article/details/80613557?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161710595216780264077433%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=161710595216780264077433&biz_id=0&am原创 2021-03-30 20:37:23 · 101 阅读 · 0 评论 -
类加载——类加载时机、类加载过程、类加载器
链接:总结版:https://www.jianshu.com/p/663d3c59297详细版:https://blog.csdn.net/justloveyou_/article/details/72217806类加载包含两部分:一部分是被谁加载,另一部分是如何加载。 被谁加载是指 ClassLoader 的双亲委派模型,如何加载是指类的加载过程。1 类加载时机类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备原创 2021-03-30 18:32:29 · 432 阅读 · 0 评论 -
JAVA集合框架详解
bilibili视频地址:https://www.bilibili.com/video/BV1zD4y1Q7Fw?p=43.对应笔记地址:https://lazydog036.gitee.io/2020/10/29/JAVA%E9%9B%86%E5%90%88%E6%A1%86%E6%9E%B6/.总结:1 List特点:有序、有下标、元素可以重复。方法:void add(int index,Object o) //在index位置插入对象o。boolean addAll(index,Col原创 2021-03-27 16:24:54 · 210 阅读 · 0 评论