![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
杂项
一些小的技术点
原来是肖某人
杭州电子科技大学计算机硕士
展开
-
println的时候发生栈溢出
我在对两个对象做数据处理的时候,想将数据打印出来看一下。但是发生了栈溢出的情况。 两个对象是一对多的关系,所以两者会互相包含对方。同时,为了数据可读性,我用了开发平台自带的toString重写。 结果就是在print的时候调用toString。两个对象不断调用对方的toString方法,导致栈溢出。 解决方法。去掉对以某一方对象toString 的调用即可 ...原创 2020-07-15 16:53:17 · 173 阅读 · 0 评论 -
Maven的使用
因为工作需要,自学了maven 下面开始maven的学习与介绍 Maven简介 maven是一款自动化构建工具 为java平台服务的自动化构建工具 Make->Ant->Maven->Gradle 构建 以Java源文件、框架配置文件、JSP等资源文件为原材料,去生产一个可运行的项目的过程 java运行时环境所用的包都是包的引用而非实际在项目中的包 那么为什么我们需要使用到这么一个工具呢 在我们平时编写项目中时常会遇到如下几个问题: jar包需要手动加入到项目中 j原创 2020-06-21 13:20:38 · 85 阅读 · 0 评论 -
关于JVM内存
JVM内存分为五个部分: 其中我们主要需要了解前三个部分。这三个部分也是我们最常用到的。 1.栈(stack) 用来存放方法中的局部变量、方法的参数以及具体的执行命令(例如赋值、调用) 方法(程序执行单位)必须在栈中运行 栈是先进后出,每次调用方法需要将对应方法从方法区中取出压入栈进行逐行执行 2.堆(heap) 所有new出来的对象都被存放在堆内存中 地址为十六进制,栈中引用类...原创 2020-05-07 14:24:58 · 103 阅读 · 0 评论 -
类加载器ClassLoader
但程序需要使用某个类且该类还没被加载到内存中,JVM会通过加载、链接、初始化三个步骤对该类进行初始化然后使用。所以这三个步骤也被称为类初始化。 一.类加载过程 1.加载 加载指的是将java程序的class字节码文件读取到内存中,并为其创建一个java.lang.Class对象。 类的加载由类加载器完成。开发者课通过继承ClassLoader来创建自己的类加载器。 通过不同的类加载器可以...原创 2020-04-25 15:51:27 · 195 阅读 · 0 评论 -
CMD命令
cd 文件路径 ---目录跳转 cd .. ---返回上级目录 cd \ ---返回根目录 dir ---显示当前路径下的文件目录 cls ---清屏 exit ---退出命令窗口 ...原创 2020-04-12 15:21:14 · 75 阅读 · 0 评论 -
大类型到小类型不需要显示转换的特例
当对short/char/byte赋值数字时, 如:byte b = 30; 右侧30默认为int赋值给byte类型的变量b,但是只要右侧没有超过左侧段类型超出的表示范围,编译器默认进行强转换,所以byte b = 30可以通编译。反之 byte b2 = 300则会报错,需要强制转换 byte b2 = (byte)300; ...原创 2020-04-13 14:20:06 · 93 阅读 · 0 评论 -
雪花id学习
这是我根据雪花id的想法自己做的一个雪花id类 写法可能有点糙,有问题请指正 package org.hibernate.entity; import java.lang.management.ManagementFactory; import java.net.NetworkInterface; import java.net.SocketException; import java.util.Enumeration; import java.util.Random; public class原创 2020-07-16 15:14:36 · 148 阅读 · 0 评论