
java
文章平均质量分 68
千g
做最好的自己
展开
-
【Java基础】程序执行过程中的内存管理
最近研究了一下程序执行过程中,内存是怎样管理的。理解的比较浅显,欢迎大家多多和我交流。例如我们写的一个程序,存放在硬盘的某个区域,如果不执行此程序,它就会默默的存放在那里。当我们执行它时,它执行的过程如下:1.将程序Load到内存区域2.操作系统自己会找到程序的main方法,从main开始执行程序3.当程序开始执行时,程序中的数据会被内存分类管理起来。基本有四类内存管理:heap(堆内存)、sta...原创 2018-02-12 16:05:12 · 496 阅读 · 23 评论 -
分页问题
做项目的过程中,用一条SQL从数据库中查询,是没有办法实现的。只能从程序中来进行处理了。可是这样的话,分页的功能就不行了,就不是真查询了。问了几个同事,他们也没有什么好的办法。所以只能从程序上来进行判断,然后手动的进行分页返回前端去了。下面是一个小例子,查询出所有符合条件的数据,然后进行分页返回。思路:当前页数(pageindex) : 1 2 ...原创 2018-11-30 17:12:52 · 548 阅读 · 7 评论 -
【Java基础】Java8新特性—Stream
目录一、流 (Stream) 到底是什么呢 ?二、Stream 的操作三个步骤2.1创建 Stream2.2Stream的中间操作2.2.1筛选与切片2.2.2映射2.2.3排序2.3、终止操作2.3.1查找与匹配2.3.2归约2.3.3收集一、流 (Stream) 到底是什么呢 ?是数据渠道,用于操作数据源(集合、数组等)所生成的...原创 2018-11-30 17:09:57 · 338 阅读 · 7 评论 -
foreach能否修改数据?
【问题】foreach循环能否真正修改数据?对于上面的问题,自己有时候也很糊涂。记得做题库的时候遇到一个需求,上一题下一题,当时就用foreach修改了一些值,但是当时做的时候就遇到了问题,并没有真正的修改里面的值。于是就用for循环做的这个功能。最后也没有自己研究是为什么。这次做实习项目的时候,又用到foreach循环来改变元素的值。发现可以改变元素的值。最近看《ja...原创 2019-02-16 20:36:15 · 19572 阅读 · 3 评论 -
【算法】递归的应用
目录一、What2个重要条件:举例:二、How实例一、实例二、一、What递归算法是一种直接或间接调用自身函数或者方法的算法。实质是把问题分解成规模小的同类问题的子问题,然后递归调用方法来表示问题的解。我们可以把” 递归 “比喻成 “查字典 “,当你查一个词,发现这个词的解释中某个词仍然不懂,于是你开始查这第二个词。可惜,第二个词里仍然有不懂的词,于是查第三个词...原创 2019-04-19 21:11:03 · 1274 阅读 · 1 评论 -
静态代理、动态代理
目录代理分类:静态代理类:动态代理类:代理对象的作用:代理模式与软件设计原则:一、静态代理: 特点: 创建: 实现: 3步骤:二、动态代理 特点: 创建:分类:JDK动态代理:特点:相关类或接口:实现: 运行结果: 总结:Cglib代理: 定义: 特点: 实现...原创 2019-04-14 21:34:27 · 260 阅读 · 0 评论 -
【Java基础】IO、NIO
目录IOFile类IO原理流的分类:NIO(New IO)NIO与IO区别阻塞与非阻塞:NIO核心:1、Channel(通道)利用通道完成文件的复制(非直接缓冲区)利用直接缓冲区完成文件的赋值(内存映射文件)通道之间的数据传输(直接缓冲区)分散(Scatter)和聚集(Gather)2、Buffer(缓冲)类型、方法、属性示例:3...原创 2019-05-11 14:32:20 · 276 阅读 · 3 评论 -
类加载机制与反射
目录一、反射:Reflection二、反射源头:java.lang.Class1.Class类:2.类的加载、连接、初始化:类加载:类的连接:类的初始化:类加载器:ClassLoaderClass的实例如何获取Class的实例Class的实例能干什么?***通过反射调用类的方法、属性三、反射的应用:动态代理与AOP一、反射:Reflect...原创 2019-05-12 11:57:25 · 167 阅读 · 3 评论 -
【JVM】类加载器
目录JVM体系结构java类的三种状态java类的生命周期类加载器分类:源码:双亲委派加载机制JVM体系结构java类的三种状态SOURCE:源码状态(静态)CLASS:二进制字节码文件状态(静态)RUNTIME:运行时状态(加载到JVM中的状态)从CLASS——RUNTIME的过程需要类加载器java类的生命周期...原创 2019-05-22 11:59:20 · 325 阅读 · 5 评论 -
【JVM】运行时数据区
目录JVM主要内存模型JVM运行时数据区:运行时数据区执行流程:1、程序计数器(PC-Program Counter Register)特点:2、栈(Stack)特点:存储内容:2种异常:StackOverflowError异常:OutOfMemoryError异常:3、堆(Heap)对象的内存分配:特点:存储内容:异常:OutO...原创 2019-05-22 20:07:13 · 256 阅读 · 4 评论 -
【JVM】什么样的对象可以被回收
目录对象在内存中的状态:可达状态:可恢复状态:不可达状态:引用分类:强引用:软引用:弱引用:虚引用:对象存活判定算法:引用计数算法:***可达性分析算法:对象死亡(被回收)前的最后一次挣扎在虚拟机堆中什么样的对象可以被回收呢?垃圾回收器在对堆进行回收前,第一件事情就是要确定这些对象之中哪些还“存活”这,哪些已经“死去”(即不可能再被任何途...原创 2019-05-23 11:15:09 · 745 阅读 · 7 评论 -
【JVM】垃圾收集算法
目录标记-清除算法(Mark-Sweep)复制算法(Copying)标记-整理算法(Mark-Compact)分代收集算法(Generational Collection):介绍几种垃圾收集的算法:标记-清除算法(Mark-Sweep)过程:首先标记出需要回收的对象; 在标记完成后统一回收所有被标记的对象。 不足:效率低:标记、清除的2个效率都不...原创 2019-05-23 14:57:11 · 261 阅读 · 6 评论 -
List<E> subList使用
最近突然看到截取List的这个方法,正好项目中进行假分页可以专用道这个方法,下面来总结一下。List<E> subList(int formIndex,int toIndex);一、注意:1、该方法返回的是父list的一个视图,从fromIndex(包含),到toIndex(不包含)。fromIndex=toIndex 表示子list为空2、父子list做的非结构性修改...原创 2018-11-30 17:12:05 · 612 阅读 · 7 评论 -
Map常用用法
目录一、Map简单介绍:1.1 Key:1.2 value:二、常用方法:2.1 判断:2.2 取值:2.3计数:2.4 增加:2.5 删除:三、实例应用3.1Map的循环3.1.1 keySet集合迭代3.1.2 keySet集合foreach循环3.1.3 entrySet集合迭代3.1.4 entrSet集合foreach循环...原创 2018-11-27 17:15:11 · 1100 阅读 · 7 评论 -
为空为Null的判断
目录一、List集合1.1判空:1.2判null:1.3编码建议:1.4异常示例:二、String字符串:2.1内存分配,值比较:2.2编码建议:2.3异常示例:2.4 str.equals("abc")与"abc".equal(str)的区别三、StringUntils.isEmpty 与 StringUntils.isBlank在做项目的过程中,...原创 2018-11-26 20:10:25 · 6193 阅读 · 8 评论 -
【Java基础】Windows下java环境变量配置
今天在Windows下又安装了一下java,记得软考的时候,在电脑上安装过一遍,时隔很久,有些步骤记得不清了,现在总结一下。配置环境变量,主要有3个步骤:JAVA_HOME、CLASSPATH、PATH。path:windows系统执行命令时要搜寻的路径classpath:java在编译和运行时要找的class所在的路径java_home:它存在的作用就是,如果安装路径变的话,不用...原创 2018-02-08 14:25:34 · 926 阅读 · 13 评论 -
【Java基础】java的第一个小例子HelloWorld
今天刚敲了Java的第一个小例子,把第一个小例子解决了,虽然很简单,但还是想总结一下。我在E:\javatest文件夹下建立了一个HelloWorld.java文件public class HelloWorld{ public static void main(String[] args) { System.out.println("HelloWorld"); }...原创 2018-02-08 14:59:56 · 2730 阅读 · 15 评论 -
SSH——java邮件发送(一)
我们注册一些东西的时候都会填写邮箱账号,用来激活注册的账号。下面来简单介绍一下邮件发送。一、邮件发送全过程邮件的发送并非通过账号对账号直接发送,而是由发送者先发送邮件到邮箱服务器,接收者通过域名、账号、密码等信息从服务器上下载该用户邮件。邮件发送过程中通常用到的协议:SMTP(简单邮件传输协议):在因特网上用于在邮件服务器之间交换邮件的协议POP(邮局协原创 2018-03-08 12:00:00 · 736 阅读 · 8 评论 -
【Java基础】java继承中的构造方法
小编现在学习了一下继承中的构造方法,觉得还是总结一下比较好。【特点】1、子类的构造的过程中必须调用其基类的构造方法。2、子类可以在自己的构造方法中使用super(argument_list)调用基类的构造方法。3、如果子类的构造方法中没有显示地调用基类构造方法,则系统默认调用基类无参数的构造方法。使用this(argument_list)调用本类的另外的构造方法如果调用super,必须写在子类构造...原创 2018-02-20 21:32:16 · 8802 阅读 · 33 评论 -
【Spring】别名设置
一:为什么使用别名? 通过这样的别名配置,可以达到在一个地方命名,在多个地方使用不同的名字和效果。二:什么是别名? 其实就是它的另外的名字,例如你的小名,昵称等。三:怎样做? 首先先要看上完篇写的博客:【Spring】IOC控制反转-demo然后对其稍微修改一下即可:在applicationContext.xml中设置别名:原创 2018-04-16 21:48:45 · 2715 阅读 · 16 评论 -
【Java】Java的数据类型
java的数据类型,包括基本数据类型、引用数据类型两大类。一、基本数据类型java中定义了4类8种基本数据类型1.整数型:byte、short、int、long java整型默认为int类型,声明long类型常量可以后加"l"或"L"2.浮点类型:float、double 默认为double类型,声明一个常量float类型,则需在后面加"f"或"F"3.文本型:char 4.逻辑型:Bool...原创 2018-04-21 16:59:14 · 718 阅读 · 21 评论 -
Unable to open debugger port (127.0.0.1:29697): java.net.SocketException "socketException"
原创 2018-05-27 08:17:21 · 1577 阅读 · 28 评论 -
【Java基础】java程序的运行机制与JVM
目录javac编译、java解释JVMJDK、JREjavac编译、java解释执行Java程序的两个步骤:使用javac编译,使用java解释执行编译:编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快。解释:解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以...原创 2018-07-08 20:26:39 · 324 阅读 · 9 评论 -
JSON的使用
JSON标准形式:JSON键值对的形式{"firstName": "Json"}JSON字符串与JS对象的关系json是js对象的字符串表示法,它使用文本表示一个js对象的信息,本质是一个字符串。var obj = {a: 'Hello', b: 'World'}; //这是一个对象,注意键名也是可以使用引号包裹的var json = '{"a": "Hello", ...原创 2018-12-17 10:15:25 · 216 阅读 · 12 评论 -
【Mysql】SQL中的join语句比较
目录1.INNER JOIN2.FULL [OUTER] JOIN3.LEFT [OUTER] JOIN4.RIGHT [OUTER] JOIN5.UNION与UNION ALL最近做项目,需要根据查询的影院查询出所有的用户,用到了左连接,现在具体的整理一下这块的内容。LEFT JOIN(左连接):返回包含左表中的所有记录和右表中联结字段相等的记录RIGHT J...原创 2018-10-26 16:20:09 · 698 阅读 · 19 评论 -
String.Utils.join(数组—字符串)简单用法
目录将数组转换为字符串:字符串转换为数组:将数组转换为字符串:需要引入包:import org.apache.commons.lang3.StringUtils;//将数组转换为字符串 StringUtils.join(str) StringUtils.join(null) = null StringUtils.join([]) ...原创 2018-10-24 18:32:25 · 2212 阅读 · 17 评论 -
BeanUtils与PropertyUtils的常用方法
目录一、copyProperties(Object A,Object B)1.1BeanUtils(推荐)1.1.1特性1.1.2代码1.2PropertyUtils二、populate(Object bean, Map properties)2.1BeanUtils三、describe(Object bean)3.1BeanUtils3.2Property...原创 2018-12-04 10:18:30 · 2793 阅读 · 5 评论 -
【JVM】垃圾收集器
目录垃圾收集器:新生代垃圾收集器:Serial:ParNew收集器:Parallel Scavenge收集器老年代垃圾收集器:Serial Old收集器Parallel Old收集器:CMS收集器(Concurrent Mark Sweep)G1收集器垃圾收集器选择原理:垃圾收集器:收集算法是内存回收的方法论,垃圾收集器是内存回收的具体实现。...原创 2019-05-23 16:26:18 · 215 阅读 · 10 评论