笔记
文章平均质量分 79
蓝桉不遇释怀
努力修行, 超越自己;不忘初心,不负韶华。
展开
-
java面试全解
文章目录 面试前的工作自我介绍充足的知识储备 javaSEJMM内存模型jdk1.8新特性java语言的特征如何实现跨平台谈谈你对面向对象的认识理解聊聊面向对象的特征,封装,继承,多态访问权限对象创建过程? 从jvm的角度出发,延伸到对象在内存中的存储空间Java类初始化顺序java中创建对象的方式对象克隆,浅克隆,深克隆构造方法对象与引用静态static抽象类和接口Object判断两个对象是否相等String特征为什么不可变String类不可变性的好处? 为什么设计为不可变.String的值不...转载 2022-04-09 10:56:55 · 10321 阅读 · 2 评论 -
springBoot常用注解【Mysql+ClickHouse】项目搭建
springBoot什么是SpringBoot?springBoot就是用来简化Spring应用的初始搭建以及开发过程,让开发者不需要经过繁琐的配置就可以进行开发,可以将尽力关注与、于业务逻辑的框架。从根本上来讲,Spring Boot就是一些库的集合,它能够被任意项目的构建系统所使用。springBoot并不是一个全新的框架,他不是spring解决方案的一个替代品,而是spring的一个封装。所以,以前可以用spring做的事,springBoot都可以做。springBoot是一个非常好的微服务开发原创 2022-02-22 14:34:05 · 13359 阅读 · 15 评论 -
深入理解ClickHouse(这一篇就够了)
clickhouse是一个用于联机的(OLAP)的列式数据库管理系统(DBMS)原创 2022-02-21 13:14:59 · 12361 阅读 · 8 评论 -
带你快速了解经典垃圾收集器,全是干货,一发入魂!!!
1.Serial收集器Serial收集器是最基础、历史最悠久的收集器,它是一个单线程工作的收集器,当它进行垃圾收集时,必须暂停其他工作线程,直到它收集结束。从Serial收集器到Parallel收集器再到Concurrent Mark Sweep(CMS)和Garbage First(G1)收集器,最终至现在的垃圾收集器的最前沿成果Shenandoah 和 ZGC等,它们越来越精细、优秀。但它们用户线程的停顿时间任然没有任何办法彻底消除。即使如此Serial收集器与其他单线程相比,任然有着优于其他收集器原创 2021-04-09 11:12:39 · 11532 阅读 · 16 评论 -
JAVA GUI
一、GUI(图形用户接口)用图形的方式来显示计算机操作界面,更方便直观java.awt(抽象窗口工具包),需要调用本地系统方法实现功能,属于重量级控件javax.swing在AWT的基础上,建立的一套图形界面系统,其中提高了更多的组件,完全由java实现,增强了移植性,属于轻量级控件Frame类方法都在下面的实例中进行演示事件监听机制a) 事件源:事件发生的地方 b) 事件:要发生的事件 c) 事件处理:针对发生的事情做出处理方案 d) 事件监听:将事件源和事件关联起来适配器设计原创 2021-01-22 10:35:43 · 202 阅读 · 0 评论 -
线程通信
线程通信线程通讯指的是多个线程通过消息传递实现相互牵制,相互调度,即线程间的相互作用。涉及三个方法:.wait一旦执行此方法,当前线程就进入阻塞状态,并释放同步监视器。.notify一旦执行此方法,就会唤醒被wait的一个线程。如果有多个线程被wait,就唤醒优先级高的那个。.notifyAll一旦执行此方法,就会唤醒所有被wait的线程。说明:.wait(),notify(),notifyAll()三个方法必须使用在同步代码块或同步方法中。.wait(),notify(),notifyAl原创 2020-12-17 09:53:51 · 302 阅读 · 0 评论 -
java 线程同步
线程同步一.使用synchronized关键字由于每个java对象都有一个内置锁,用synchronized修饰方法或者代码块时,内置锁会保护整个方法或代码块,要想执行这个方法或者代码块必须获得其内置锁,运行时会加上内置锁,当运行结束时,内置锁会打开。由于同步是一种高开销的工作,所以尽量减少同步的内容,只需同步代码块就可以。(ps:synchronized是不能锁住不同对象的线程的,只能锁住同一个对象的线程,也就是说锁住的是方法所属的主体对象自身)1.修饰方法public class Sy_Thre原创 2020-12-17 09:38:24 · 4659 阅读 · 0 评论 -
java进程与线程
进程概念进程的概念进程是操作系统结构的基础;是一个正在执行的程序;计算机中正在运行的程序实例;可以分配给处理器并由处理器执行的一个实体;由单一顺序的执行显示,一个当前状态和一组相关的系统资源所描述的活动单元。第一,进程是一个实体。每一个进程都有它自己的地址空间,一般情况下,包括文本区域(text region)、数据区域(data region)和堆栈(stack region)。文本区域存储处理器执行的代码;数据区域存储变量和进程执行期间使用的动态分配的内存;堆栈区域存储着活动过程调用的指令和本地原创 2020-12-17 09:37:00 · 431 阅读 · 3 评论 -
UDPJAVA
UDP协议UDP(User Datagram Protocol),用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETF RFC 768是UDP的正式规范。UDP提供了无连接通信,且不对传送数据包进行可靠性保证,适合于一次传输少量数据,UDP传输的可靠性由应用层负责。UDP报文没有可靠性保证、顺序保证和流量控制字段等,可靠性较差。但是正因为UDP协议的控制选项较少,在数据传输过程原创 2020-12-17 09:34:54 · 9414 阅读 · 0 评论 -
java中的io流
概念java的io是实现输入和输出的基础,可以方便的实现数据的输入和输出操作。在java中把不同的输入/输出源(键盘,文件,网络连接等)抽象表述为“流”(stream)。通过流的形式允许java程序使用相同的方式来访问不同的输入/输出源。stram是从起源(source)到接收的(sink)的有序数据。IO流的分类按照不同的分类方式,可以把流分为不同的类型。常用的分类有三种:按照流的流向分,可以分为输入流和输出流。输入流: 只能从中读取数据,而不能向其写入数据。输出流:只能向其写入数原创 2020-12-17 09:28:03 · 191 阅读 · 0 评论 -
Java中的集合
集合java的集合主要分为List列表、Set集合、map(映射)。(1)List集合是一个有序的队列,每一个元素都有他的索引。第一个元素的索引值为0。 List的实现类有LinkedList、ArrayList、Vector、Stack。List列表public class Dome3 implements Comparator<String> { public static void main(String[] args) { ArrayLis原创 2020-12-17 09:26:38 · 183 阅读 · 0 评论 -
Java中的SimpleDateFormat,Biginteger,BigDecimal
Java中的SimpleDateFormat 、BigInteger 、BigDecimal1.SimpleDateFormatSimpleDateFormat 是一个以国别敏感的方式格式化和分析数据的具体类。 它允许格式化 (date -> text)、语法分析 (text -> date)和标准化。SimpleDateFormat 允许以为日期-时间格式化选择任何用户指定的方式启动。 但是,希望用 DateFormat 中的 getTimeInstance、 getDateInstan原创 2020-11-21 12:50:36 · 1691 阅读 · 0 评论 -
Java中的Math类、Random类
Java中的Math类、Random类1.Math类Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。Math 类来自java.long.Math.random()```javapublic class Math_dome1 { public static void main(String[] args) { System.out.println(Math.abs(-2.0)); //绝对值 System.out.printl原创 2020-11-21 12:47:27 · 4655 阅读 · 0 评论 -
Java基础数据类型
Java学习笔记(第三篇)Java变量定义:变量是程序中最基本的存储单元,程序执行中数值可变的.本质上,变量其实是内存中的一小块区域,使用变量名来访问这块区域,因此,每一个变量使用前必须要先申请(声明),然后必须进行赋值(填充内容),才能使用.变量是通过使用变量名来访问这块区域的其要素包括变量名,变量类型。Java程序中每一个变量都属于特定的数据类型,在使用前必须对其声明,声明格式为:[修饰符] type varName [=value][,varName[=value]……]pub原创 2020-10-10 17:33:33 · 227 阅读 · 0 评论 -
运算符
Java基础学习(第四篇)基本数据类型转换8种基本数据类型除了Boolean,其余其中之间都可以互相转换。默认转换:容量小的可以自动转换为容量大的,容量大的可以包含容量小的,参与混合运算时,小容量会自动转换为大容量。强制类型转换:容量大是的转换为容量小的。强制转换可能会出来两种问题:1,溢出 2,精度降低。public class data_type { public static void main(String[] args) { /** * 默认转换原创 2020-10-11 17:14:03 · 172 阅读 · 2 评论 -
面向对象的三大特征——封装、继承、多态
Java面向对象学习笔记(第七篇)包:概念:物理上是文件夹,管理类作用:1.避免类重名 2. 按照不同的功能管理类 3. 控制访问权限命名规范:在包名中,可以使用.号来区分包的级别;包名一般情况下是小写第一级 指该项目的类型,如com,org,gov等,第二级 指项目所开发或者运行的公司名称,如:oracle,sun,huawei等第三级 指项目的名称,如:bcms,oa,erp,cms等第四级 指项目模块的名称,如:bean,action,exception等(包可以更好的管理逻辑相原创 2020-10-25 13:22:40 · 10802 阅读 · 0 评论 -
面向对象——构造方法
Java 基础学习笔记(第六篇)面向对象(POP[procedure oriented programming])和面向过程(OOP[object oriented programming])的设计思想面向过程:分析出解决问题所需要的步骤,然后把步骤一步一步的实现例如:把大象装进冰箱的问题:分析出一共分为三布,第一步:打开冰箱门;第二布:把大象塞进冰箱里;第二步:关上冰箱门。面向过程:以分类的方式进行思考和解决问题,面向对象的思维方式适用于处理复杂的问题,先使用面向对象的方式对整体关系做出分类,原创 2020-10-24 13:50:15 · 1830 阅读 · 0 评论 -
控制台输入、循环语句
Java 基础学习笔记(第五篇)控制台输入(使用标准输入串System.in,使用Scanner取得一个字符串或一组数字)在新增一个Scanner对象时需要一个System.in对象,因为实际上还是System.in在取得用户输入。Scanner的next()方法用以 取得用户输入的字符串;nextInt()将取得的输入字符串转换为整数类型;同样,nextFloat()转换成浮点型;nextBoolean()转 换成布尔型。例: System.out.print(“输入”);Scanner sc原创 2020-10-18 12:05:07 · 10239 阅读 · 2 评论 -
Java基础代码入门练习题(你也来试试?)
Java 基础代码练习题1.一直青蛙在一口11米深的井底向上爬,白天向上爬3米,晚上向下滑2米,总共需要几天可以爬出.package com.Work;public class Frog_Dome { public static void main(String[] args) { int height = 11; int i=1; outer: while(height>=0){ height-=3;原创 2020-10-17 14:06:12 · 10484 阅读 · 4 评论