- 博客(32)
- 收藏
- 关注
原创 Java内存模型之Happens-Before
引言 Java内存模型是个很复杂的规范,可以从不同的角度解读,站在程序员的角度看,Java内存模型规范了JVM如何提供按需禁用缓存和编译优化的方法,这些方法包括volatile、synchronized和final三个关键字,以及六项Happens-Before规则,本次主要讲Happens-Before规则。 Happens-Before规则...
2019-06-28 15:35:46 186
原创 Redis的持久化
一.引出Redis持久化 Redis是一个内存数据库,它将自己的数据库状态存在内存中,如果Redis服务器进程退出,那么服务器中的数据库状态也会消失不见,所以应想办法将存储在内存中的数据库状态保存到磁盘中。因此,Redis提供了RDB持久化功能和AOF持久化功能。二.RDB持久化 RDB持久化是Redis提供的一个可以将Redis在内存中的数据库...
2019-06-01 12:32:23 181
原创 JVM中的垃圾回收算法
一.在介绍JVM中的垃圾回收算法之前,先了解一下垃圾回收器如何判断对象是“存活”还是“死去”(即不可能再被任何途径使用的对象)。 1.引用计数算法 这个算法的思想是:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加一;当引用失效时,计数器值就减一;任何时刻计数器值为0的对象是不可能再被使用的。 这个算法的...
2019-04-07 13:13:12 150
原创 Java虚拟机中对象的创建流程
Java虚拟机中对象(仅限于普通的Java对象,不包括数组和Class对象)的创建流程如下: 1.虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否被加载、解析和初始化过。如果有,那必须先执行相应的类加载过程。 2.类加载检查通过后,虚拟机将为新生对象分配内存,为对象分配空间也就是把一块...
2019-04-06 11:17:57 163
原创 Java内存区域
Java虚拟机是Java程序员进阶时需要了解的内容,下面我就来总结一下Java内存区域。1.运行时数据区域Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域,这些区域各自有各自的用途。1.1程序计数器 程序计数器是一块很小的内存空间,它可以看做是当前线程所执行的字节码的行号指示器。字节码解释器工作时就是通过改变这个计数器的值来选取下...
2019-04-04 16:08:28 145
原创 数据结构之——栈
栈是一种特殊的线性表,只能在一端进行操作,栈顶允许操作,而栈底不能操作。 栈的主要特点是:先进后出,后进先出栈的代码可以用数组和链表实现,这里我就用数组实现栈。//基于数组实现的顺序栈public class MyStack { private String[] items; //数组 //初始化数组,申请一个大小为n的数组空间...
2019-03-14 13:10:56 96
原创 使用IO流实现复制有多级目录的文件夹
解决该问题的重点是如何复制文件夹,这里就需要进行判断,判断要复制的文件是文件夹,还是可直接复制的标准文件(语文不好,描述的有些不清楚,请见谅);是文件夹的话,则需要封装文件夹的路径,使用listFiles()方法返回抽象路径名数组,该数组内存放的是文件夹内的文件路径,然后对这些文件路径再次进行判断;如果是可直接复制的标准文件,就直接复制即可。import java.i...
2018-12-03 19:18:40 445 3
原创 设计模式之——单例模式
单例模式,就是一个类只能有一个实例。 单例模式共分为两大类: 懒汉模式:实例在第一次使用时创建; 饿汉模式:实例在类加载时创建。 ...
2018-11-30 22:42:24 103
原创 使用IO流实现删除文件夹(有多级子目录)
使用IO流实现删除文件夹的主要问题是如何删除文件夹中的文件夹,下面就用代码演示。import java.io.File;//Delete everything in the folderpublic class DeleteDemo { public static void main(String[] args) { //封装要删除的路径 ...
2018-11-19 22:56:14 832
原创 集合框架学习之——Map
Map<K,V>有两个类型参数:K 是此映射所维护的键的类型,V 是映射值的类型。将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。Map 接口提供三种collection 视图,允许以键集、值集或键-值映射关系集的形式查看某个映射的内容。映射顺序 定义为迭代器在映射的 collection 视图上返回其元素的顺序。某些映射实现可明确保证其顺序,如 Tree...
2018-11-07 19:30:22 213
原创 集合框架学习之——Set
Set是一个不包含重复元素的 collection。Set有三个重要的实现类:HashSet,LinkedHashSet,TreeSet,下面讲解这三个实现类。 一:HashSet底层是哈希表构成,它不保证set的迭代顺序,特别是它不保证该顺序恒久不变。此类允许使用 null 元素。下面用代码演示为什么HashSet不保证set的迭代顺序:import java.util.H...
2018-11-07 18:48:18 126
原创 集合框架学习之——List
List是Collection接口下的两大接口之一,它是有序的collection。此接口的用户对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。List中通常允许插入重复的元素。List有两个重要的实现类:ArrayList和LinkedList。下面主要讲这两个实现类。 一:ArrayList是List接口的大小...
2018-11-07 17:13:13 180
原创 使用java实现计算字符串中大写、小写字符和数字的个数
这个还是很容易实现的,下面只放出方法的源码:public static void count(String str){ //定义三个计数的变量 int big=0,small=0,num=0; for(int i=0;i<str.length();i++){ //接下来就是判断了 if(st...
2018-10-24 22:56:58 1711
原创 java实现二分查找法
什么是二分查找法?二分查找法是一种效率较高的查找方法;首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。 也就是说,...
2018-10-24 20:14:42 129
原创 用java实现冒泡排序和选择排序
冒泡排序:依次比较两个相邻的元素,将值大的元素交换至右端,一轮比较过后,最大的元素在最右端。 public class BubbleSort { public static void main(String[] args) { int[] arr={11,2,223,3,42,9,};//随意定义个数组,测试 BubbleSort(arr); ...
2018-10-23 17:36:21 351
原创 使用JDBC完成对数据库数据的查询
接下来实现使用JDBC完成对数据库数据的查询,这里先讲涉及的几个知识点。1.java.sql.ResultSet:表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。ResultSet 对象具有指向其当前数据行的光标。最初,光标被置于第一行之前。next 方法将光标移动到下一行;因为该方法在 ResultSet 对象没有下一行时返回 false,所以可以在 while 循环中使用它...
2018-10-22 23:17:20 927 2
原创 使用JDBC实现对数据库表的增、删、改
上一篇文章实现了用JDBC连接数据库,接下来便使用JDBC实现对数据库的增、删、改,查询操作将在下一篇文章中讲解。这里要先讲一下java.sql.Statement,它是用于执行静态 SQL 语句并返回它所生成结果的对象。java.sql.Statement中有个 executeUpdate方法,它是执行给定 SQL 语句,该语句可能为 INSERT、UPDATE 或 DELETE 语句,...
2018-10-19 21:38:22 775
原创 使用JDBC连接数据库
使用JDBC连接数据库之前需要先了解四大配置参数:driverClassName:com.mysql.jdbc.Driverurl:jdbc:mysql://localhost:3306/数据库名username:登录数据库的名字,一般是rootpassword:登录数据库的密码注意:无论是使用IDEA还是eclipse连接mysql数据库之前都需要导入jar包,此处不做详细讲...
2018-10-19 20:57:52 153
原创 使用JavaScript实现全选(全不选)按钮
有如下案例,使用JavaScript实现全选(全不选)按钮。这个按钮在实际开发中也是很常用的,我就把我的源码附上<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>多选框练习</title>
2018-10-18 23:27:25 7486 1
原创 JavaScript实现动态显示时间
今天完成一个案例,就是如何使用JavaScript在页面上动态显示时间。下面代码附上:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>DynamicTime</title><
2018-10-18 20:19:42 10674
原创 JavaScript中的bom对象
首先,bom是 broswer object model 的缩写,意思是浏览器对象模型;下面介绍bom里的几个对象。1.navigator:获取客户机的信息(浏览器的信息)2.screen:获取屏幕的信息 下面演示一下navigator里的一个appName属性,和screen 的height属性<!DOCTYPE html><html lang...
2018-10-15 23:49:08 222
原创 浅谈Java一维数组
数组是用来存储数据的集合,但是,通常我们会发现把数组看作一个存储具有相同类型的变量集合会。1.声明数组变量elementType[] arrayRefVar;(元素类型[] 数组引用变量;)elementType可以使任意数据类型,但是数组中所有的元素都必须具有相同的数据类型。比如:下面的代码声明变量mylist,它引用一个具有int型元素的数组。 int[]...
2018-10-11 13:18:33 149
原创 使用JavaScript实现乘法表
源码附上:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>乘法表</title></head><body><sc
2018-10-10 22:34:04 499
原创 JavaScript与html结合的两种方式
JavaScript与html结合有两种方式,下面就来介绍这两种方式:(1)<script type="text/javascript">js代码</script><!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&
2018-10-10 19:15:34 1183
原创 浅谈switch语句
switch语句的格式:switch(表达式) case 取值1:执行语句;break; case 取值2:执行语句;break; ... default:执行语句;break; switch语句特点:(1)表达式的取值可以是byte、short、int、char; ...
2018-10-10 18:17:09 372
原创 CSS和HTML结合的四种方式
(1) 在每个html标签上都有一个style属性,把css和html结合在一起<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head&a
2018-10-08 19:14:13 337
原创 html中表单标签详解
1.表单标签 *可以提交数据到服务器 *<form></form>定义一个表单的范围 -属性 **action 提交到地址,默认提交到当前页面 **method 表单的提交方式 ...
2018-10-04 14:07:08 615
原创 初步实现注册页面
马上十一,今天自我放松一天,就把今天上机课初步完成的注册页面放上来。 由于课内任务是要完成一个电子邮箱系统,所以我是在jsp下写的html。 下面把我的代码放上来:<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-...
2018-09-29 22:32:22 193
原创 HTML初学习(2)
又到了每天最喜欢的学习时间了! 1.图像标签(重点) *<img src="图片的路径"/> - src: 图片的路径 -weight:图片的宽度 -height:图片的高度 -alt : 图片上显示的文字,把鼠标移动到...
2018-09-28 20:32:11 143
原创 HTML初学习(1)
html的规范:1:一个html文件的开始标签和结束的标签<html></html>2:html包含两部分内容 (1)<head>设置相关信息</head> (2)<body>显示在页面上的内容都写在body里面</body>3:html的标签有开始标签,也要有结束标签4:ht...
2018-09-27 22:36:33 193
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人