我姓弓长那个张
码龄8年
关注
提问 私信
  • 博客:14,351
    动态:6
    14,357
    总访问量
  • 23
    原创
  • 454,456
    排名
  • 27
    粉丝
  • 0
    铁粉

个人简介:Present is a present.

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2017-05-18
博客简介:

我姓弓长那个张的博客

查看详细资料
个人成就
  • 获得9次点赞
  • 内容获得0次评论
  • 获得23次收藏
  • 代码片获得143次分享
创作历程
  • 23篇
    2021年
成就勋章
TA的专栏
  • JVM学习笔记
    7篇
  • ZooKeeper
    3篇
  • Java学废之路
    10篇
  • 设计模式
    3篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
  • 搜索
    elasticsearch
  • 服务器
    linux
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

【JVM学习笔记07】对象实例化与访问定位

七、对象实例化与访问定位7.1 创建对象的方式new:最常见的方式、单例类中调用 getInstance 的静态类方法,XXXFactory 的静态方法Class 的 newInstance 方法:反射的方式,在 JDK 9 里面被标记为过时的方法,因为只能调用空参构造器,权限必须是 publicConstructor 的 newInstance(XXX):反射的方式,可以调用空参的,或者带参的构造器,权限没有要求使用 clone():不调用任何的构造器,但是要求当前的类实现 Cloneabl
原创
发布博客 2021.11.23 ·
813 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【JVM学习笔记06】堆

七、堆Java堆是Java虚拟机所管理的内存中最大的一块,其唯一的目的是存放对象实例。java堆是被所有线程所共享的一块内存区域(TLAB区除外),在虚拟机启动时创建,几乎所有对象的实例都存储在堆中,所有的对象和数组都要在堆上分配内存。堆和方法区针对一个 JVM 进程来说是唯一的,也就是一个进程只有一个 JVM ,但是进程包含多个线程,他们是共享同一堆和方法区空间的,每个线程各自包含一套程序计数器、本地方法栈和虚拟机栈。一个 JVM 实例只存在一个堆内存,堆也是 Java 内存管理的核心区
原创
发布博客 2021.11.19 ·
825 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

JVM-1.md

发布资源 2021.11.17 ·
md

JVM-3.md

发布资源 2021.11.17 ·
md

JVM-2.md

发布资源 2021.11.17 ·
md

【JVM学习笔记05】虚拟机栈

六、虚拟机栈虚拟机栈描述的是 Java 方法执行的内存模型,方法的执行的同时会创建一个栈帧用于存储方法中的局部变量表、操作数栈、动态链接、方法的出口等信息。每个方法从调用直到执行完成的过程,就对应着一个栈帧在虚拟机栈中入栈到出栈的过程。栈也叫栈内存,主管Java程序的运行,是在线程创建时创建,它的生命期是跟随线程的生命期,线程结束栈内存也就释放,对于栈来说不存在垃圾回收问题,只要线程一结束该栈就Over,生命周期和线程一致,是线程私有的。6.1 栈帧栈中的数据都是以栈帧(Stack Frame)
原创
发布博客 2021.11.17 ·
877 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【JVM学习笔记04】类加载子系统

五、类加载器子系统Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这个过程被称为虚拟机的类加载机制。类加载器的作用是负责加载Class文件,Class文件在文件开头有特定的文件标示,将Class文件字节码内容加载到内存中,并将这些内容转换成方法区中的运行时数据结构并且类加载器只负责Class文件的加载,至于它是否可以运行,则由Execution Engine决定5.1 类的生命周期一个类型(类或接口)从被加载
原创
发布博客 2021.11.16 ·
217 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【JVM学习笔记03】类文件结构

【该章节主要总结了比较重要的部分,没有概述全面,后续将结合实际情况再继续补充完善】四、类文件结构我们平时说的 Java 字节码,指的是用 Java 语言编译成的字节码。准确的说任何能在 JVM 平台上执行的字节码格式都是一样的。所以应该统称为:JVM 字节码。不同的编译器,可以编译出相同的字节码文件,字节码文件也可以在不同的 JVM 上运行。Java 虚拟机与 Java 语言并没有必然的联系,它只与特定的二进制文件格式— Class 文件格式所关联,Class 文件中包含了 Java 虚拟机指令.
原创
发布博客 2021.11.14 ·
771 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【JVM学习笔记02】运行时内存区域

JVM运行时内存区域三、运行时内存区域内存是非常重要的系统资源,是硬盘和 CPU 的中间仓库及桥梁,承载着操作系统和应用程序的实时运行 JVM 内存布局规定了 Java 在运行过程中内存申请、分配、管理的策略,保证了 JVM 的高效稳定运行。不同的 JVM 对于内存的划分方式和管理机制存在着部分差异。比如HotSpot有方法区,而其他虚拟机就没有方法区这个分区。Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域有各自的用途,以及创建和销毁的时间,有的区域随
原创
发布博客 2021.11.12 ·
1379 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

【JVM学习笔记01】概述

JVM概述JVM 体系结构概览:一、概述1.1 Java:跨平台的语言Java 是目前应用最为广泛的软件开发平台之一。随着 Java 以及 Java 社区的不断壮大 Java 也早已不再是简简单单的一门计算机语言了,它更是一个平台、一种文化、一个社区。作为一个平台,Java 虚拟机扮演着举足轻重的作用Groovy、Scala、JRuby、Kotlin等都是Java平台的一部分作为一种文化,Java 几乎成为了“开源”的代名词。第三方开源软件和框架。如Tomcat、Struts,MyBat
原创
发布博客 2021.11.11 ·
1185 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Java学废之路10——Java8新特性

JAVA8新特性速度更快代码更少——Lambda强大的Stream API便于并行最大化减少空指针异常——optional零、速度更快速度更快指的是hashMap的结构增加了红黑树。在之前的hashmap结构中,jdk采用的是数组+链表的方式进行。当发生碰撞时,会极大地降低查找的效率。所以在jdk1.8中,采用了数组+链表+红黑树的方式,前提是当发生碰撞的个数大于8时且总容量大于64时,才会将链表结构转换为红黑树,此时会造成添加元素的效率降低,但是查找和删除等的效率会大大提高:一、
原创
发布博客 2021.11.07 ·
246 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Zookeeper03—原理

Zookeeper原理ZAB——广播与崩溃恢复,保证数据最终一致性监听器分布式锁4.1 Session会话客户端与服务端之间的连接是基于 TCP 长连接,client 端连接 server 端默认的 2181 端口,也就是 session 会话。4.1.1 会话的创建从第一次连接建立开始,客户端开始会话的生命周期,客户端向服务端的ping包请求,每个会话都可以设置一个超时时间。sessionID: 会话ID,用来唯一标识一个会话,每次客户端创建会话的时候,Zookeeper 都会为
原创
发布博客 2021.11.02 ·
1110 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Zookeeper02—安装、命令与集群搭建

二、安装与命令[2.0 Zookeeper 安装配置 | 菜鸟教程 (runoob.com)](https://www.runoob.com/w3cnote/Zookeeper -setup.html)2.1 安装2.1.1 安装 jdk安装jdk。创建目录 /usr/local/java ,将 jdk 安装包移入并解压至该目录。配置jdk环境变量。编辑 /etc/profileJAVA_HOME=/usr/local/java/jdk1.8.0_231CLASSPATH=JAV
原创
发布博客 2021.11.02 ·
1138 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学废之路09——异常、断言与日志

异常、断言和日志一、背景在程序运行期间,由于程序的错误或者环境的影响造成用户的数据丢失等,为了避免这些错误的发生,系统应该做到以下几点:向用户通告错误保存所有的工作结果允许用户以妥善的形式退出程序异常——因为错误的输入或者网络的连接出现问题等;断言——在测试期间,需要各种检测以验证程序操作的正确性。然而在测试程序时,这些检测将会浪费特别多的时间,为了方便程序的测试,略过各种铺垫性的检测程序,引入断言;日志——当程序出现错误的时候,将错误的信息记录下来,方便用户的检查。二、异常Thro
原创
发布博客 2021.11.02 ·
284 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

Java学废之路08——反射与代理

八、反射与代理8.1 反射机制当使用字符串的形式给出一个类名时,依靠什么机制来获取他的类型呢?JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用对象的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。8.1.1 简介在日常的第三方应用开发过程中,经常会遇到某个类的某个成员变量、方法或是属性是私有的或是只对系统应用开放,这时就可以利用Java的反射机制来获取所需的成员变量或是方法(public或pri
原创
发布博客 2021.11.01 ·
201 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学废之路07——IO流

七、IO流对于任何程序设计语言而言,输入输出(Input/Output)系统都是非常核心的功能。程序运行需要数据,数据的获取往往需要跟外部系统进行通信,外部系统可能是文件、数据库、其他程序、网络、IO设备等等。外部系统比较复杂多变,那么我们有必要通过某种手段进行抽象、屏蔽外部的差异,从而实现更加便捷的编程。I/O 问题是任何编程语言都无法回避的问题,可以说 I/O 问题是整个人机交互的核心问题,因为 I/O 是机器获取和交换信息的主要渠道。在当今这个数据大爆炸时代,I/O 问题尤其突出,很容易成为一个性
原创
发布博客 2021.10.28 ·
339 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学废之路06——泛型与集合

六、泛型与集合6.1 泛型为了能够更好的学习容器,我们首先要先来学习一个概念:泛型。泛型是JDK1.5以后增加的,它可以帮助我们建立类型安全的集合。在使用了泛型的集合中,遍历时不必进行强制类型转换。JDK提供了支持泛型的编译器,将运行时的类型检查提前到了编译时执行,提高了代码可读性和安全性。泛型的本质就是“数据类型的参数化”。泛型程序设计意味着编写的代码可以被很多不同类型的对象所重用。使用泛型编写的代码要比那些杂乱的使用Object变量,然后再进行强制类型转换的代码具有更好的安全性,可读性。6.
原创
发布博客 2021.10.27 ·
356 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学废之路05——枚举类、注解与比较器

05 JAVA枚举类、注解与比较器5.1 枚举类类的对象只有有限个,确定的。当需要定义一组常量时,强烈建议使用枚举类。JDK1.5之前需要自定义枚举类JDK 1.5 新增的 enum 关键字用于定义枚举类5.1.1 属性枚举类对象的属性不应允许被改动,所以应该使用 private final 修饰枚举类的使用 private final 修饰的属性应该在构造器中为其赋值若枚举类显式的定义了带参数的构造器,则在列出枚举值时也必须对应的传入参数5.1.2 自定义枚举类私
原创
发布博客 2021.10.23 ·
173 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Java学废之路04——接口与内部类

04 JAVA接口与内部类4.1 接口4.1.1 接口与抽象类抽象类:声明方法的存在但不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不在该类中实现这些方法。抽象类中可以没有抽象方法;接口中的方法必须是抽象方法(1.8中的增强接口除外)抽象类中可以有普通的成员变量;接口中的变量必须被初始化抽象类只能被单继承,一个类可以实现多个接口抽象类不可被实例化,即不可直接new一个抽象类。但是,可以声明一个变量为抽象
原创
发布博客 2021.10.23 ·
136 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学废之路03——类

03 JAVA类多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中, 那么多个类无需再定义这些属性和行为,只要继承那个类即可。继承的出现减少了代码冗余,提高了代码的复用性继承的出现,更有利于功能的扩展继承的出现让类与类之间产生了关系,提供了多态的前提3.1 概述在 Java 中,没有类就无法做任何事情。要想使用对象,就必须首先构造对象,并指定其初始状态,然后对对象应用方法。3.1.1 概述类是构造对象的模板或蓝图。由类构造对象的过程称为创建类的实例。封装是将数据与行为组合在
原创
发布博客 2021.10.23 ·
181 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多