随笔分类 - Java基础
Java基础
摘要:show me the code and talk to me,做的出来更要说的明白 我是布尔bl,你的支持是我分享的动力! 一 、引入 设计接口是我们开发人员的日常操作。当我们把接口交给前端人员时,是否有种拔剑出鞘的错觉。毕竟交付接口,我们的开发工作就阶段性完成了。不过,如果我们没有一个接口设计规
阅读全文
摘要:show me the code and talk to me,做的出来更要说的明白 GitHub 项目 "JavaHouse" 同步收录 我是布尔bl,你的支持是我分享的动力! 引入 作为一名合格的后端开发人员,我们难免要在 Linux 环境下进入操作,查找问题,配置文件等等操作。因此,我觉得我们
阅读全文
摘要:show me the code and take to me,做的出来更要说的明白 GitHub项目 "JavaHouse" 同步收录 喜欢就点个赞呗! 你的支持是我分享的动力! 引入 是否有遇到看不懂身边同事代码的情况,是否有被面试官问到 Java 新特性不懂的情况。我掐指一算你大概是遇到的了
阅读全文
摘要:show me the code and take to me,做的出来更要说的明白 GitHub项目 "JavaHouse" 同步收录 喜欢就点个赞呗! 你的支持是我分享的动力! 引入 反射是一种不按套路处出牌的机制。通常我们接触的方式都是 "正射",暂且起这个名字。虽然我们用的少,但是反射其实就
阅读全文
摘要:欢迎点赞阅读,一同学习交流,有疑问请留言 。 GitHub上也有开源 "JavaHouse" 欢迎star 1 引入 在Java8里面,ThreadLocal 是一个泛型类。这个类可以提供线程变量。每个线程都有自己的变量。这意味着什么?每一个线程都有自己的资源,就像在现实生活中,每一个程序员都有自己
阅读全文
摘要:引言 说到多线程,我觉得我们最重要的是要理解一个临界区概念。 举个例子,一个班上1个女孩子(临界区),49个男孩子(线程),男孩子的目标就是这一个女孩子,就是会有竞争关系(线程安全问题)。推广到实际场景,例如对一个数相加或者相减等等情形,因为操作对象就只有一个,在多线程环境下,就会产生线程安全问题。
阅读全文
摘要:1 说明 1. LinkedList是一个双向链表,继承看List接口和Duque接口。 2. LinkedList不是线程安全,确保线程安全方法 2 源码分析 2.1 静态内部类 LinkedList是一个链表,需要一个node类作为节点,因此他在内部构建了一个静态内部类。 静态内部类,该类不能直
阅读全文
摘要:1 背景 小白进入公司,进入日常多人开发,git的使用应该是新人要掌握的第一个技能。git是一个分布式数据存储库,分为远程存储和本地存储,本地存储的话,每一台计算机就相当于一个存储数据库,可以记录和存储代码 2 使用 本文以IDEA的git工具操作为例,结合日常开发,讲解如何git开发。 2.1 情
阅读全文
摘要:从实践认识修饰符 1 修饰符分类 说到修饰符,大家都知道有private deafult protect public,说到它们的区别,相信大家脑海会出现一张图。 |同一个类|同包非子类|子类|不同包非子类 | | | private|是|否|否|否 default|是|是|否|否 pr
阅读全文
摘要:1 前言 git前身是BitKeeper,但是他不是开源软件,不符合当时开源趋势,于是就会有了开源的git,git开发只用了十天时间。目前git是公司开发必不可少的一个工具,用于多人开发的分布式版本控制软件。git是Linux内核,由c语言开发。 2 工作流程 一般工作流程如下: 1. 克隆 Git
阅读全文
摘要:Spring 介绍:Spring 框架是一个Java平台,它为开发Java应用程序提供全面的基础架构支持。Spring负责基础架构,因此您可以专注于应用程序的开发。 Spring可以让您从“plain old Java objects”(POJO)中构建应用程序和通过非侵入性的POJO实现企业应用服
阅读全文
摘要:一、前言 Linux作为一个开源系统,被极客极力推崇,作为程序员不来了解一下,那就亏了 Linux是一种自由和开放源代码的类UNIX操作系统。该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布,在加上用户空间的应用程序之后,成为Linux操作系统。Linux也是自由软件和开放源代码软件发
阅读全文
摘要:" " 一、前言 计算机程序离不开算法和数据结构,数据结构这门学科就是为了让计算机能够以更加高效,简单,便捷的方式来存储和使用数据而产生的。本文简单介绍栈(Stack)和队列(Queue)的实现 二、图解 三、线性表 1、 顺序存储结构:用一段地址连续的存储单元依次存储线性表的数据元素 2、 链式存
阅读全文
摘要:前言 Markdown是一种轻量级的标记语言,有John Gruber以及Aaron Hillel Swartz一起编写。Aaron Hillel Swartz是一个极富传奇的黑客,有兴趣可以看看他的生平。 由于Markdown轻量化,易读易写,网上支持者众多。Github、掘金、简书、博客园、cs
阅读全文
摘要:Java内存模型(jmm) Why:保证多线程正确协同工作 看图说明: 文字解释:线程a和线程b通信过程,首先线程a把本地内存的共享变量更新到主内存中,然后线程b去读取主内存的共享变量,最后更新到自己的本地内存中 JMM涉及的特性以及规则 特性 1.原子性:操作不可中断,即一个线程操作不会被另一个线
阅读全文
摘要:空指针(Java.lang.NullPointerException) 1、他是啥(what): 在编程语言中,空指针(英语:Null Pointer)是一个已宣告但并未指向一个有效对象的指针,许多程序利用空指针来表示某些特定条件,例如未知长度数组的结尾或某些无法运行的操作。在可选择类型(optio
阅读全文
摘要:Java线程通信方法 0、(why)每个线程都有自己的栈空间,我们要线程之间进行交流,合作共赢。 1、synchronized和volatile关键字 a) 看下面的synchronized关键字 b) 看下面的volatile关键字 2、等待/通知机制:一个线程A调用对象的wait()方法,另一个
阅读全文
摘要:Java线程的状态有6种 1、 初始(NEW):新创建了一个线程对象,但还没有调用start()方法。 2、 运行(RUNNABLE):Java线程中将就绪(ready)和运行中(running)两种状态笼统的称为“运行”。(什么是就绪) 线程对象创建后,其他线程(比如main线程)调用了该对象的s
阅读全文
摘要:1、 分类一:乐观锁与悲观锁 a)悲观锁:认为其他线程会干扰本身线程操作,所以加锁 i.具体表现形式:synchronized关键字和lock实现类 b)乐观锁:认为没有其他线程会影响本身线程操作,所以不加锁 i.具体表现形式:java的原子类的递增操作 ii.原理:采用cas算法 c)Cas算法:
阅读全文
摘要:IPV4必须满足以下四条规则: 1、任何一个1位或2位数字,即0-99; 2、任何一个以1开头的3位数字,即100-199; 3、任何一个以2开头、第2位数字是0-4之间的3位数字,即200-249; 4、任何一个以25开头,第3位数字在0-5之间的3位数字,即250-255。 这样把规则全部罗列出
阅读全文

浙公网安备 33010602011771号