自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

BIIgZz

初入IT世界,初学Android,想要以此打开新世界的大门

  • 博客(27)
  • 收藏
  • 关注

原创 数据库(第一范式、第二范式、第三范式)

一、第一范式1NF是对属性的原子性,要求属性具有原子性,不可再分解;表:字段1、 字段2(字段2.1、字段2.2)、字段3 ......如学生(学号,姓名,性别,出生年月日),如果认为最后一列还可以再分成(出生年,出生月,出生日),它就不是一范式了,否则就是;二、第二范式2NF是对记录的惟一性,要求记录有惟一标识,即实体的惟一性,即不存在部分依赖;表:学号、课程号、姓名、学...

2020-01-05 21:13:21 911

转载 volatile的作用

可见性:可见性是一种复杂的属性,因为可见性中的错误总是会违背我们的直觉。通常,我们无法确保执行读操作的线程能适时地看到其他线程写入的值,有时甚至是根本不可能的事情。为了确保多个线程之间对内存写入操作的可见性,必须使用同步机制。可见性,是指线程之间的可见性,一个线程修改的状态对另一个线程是可见的。也就是一个线程修改的结果。另一个线程马上就能看到。比如:用volatile修饰的变量,就会具有可...

2019-12-29 22:22:54 96

原创 HashMap 和hashtable的区别

HashTable和HashMap区别①继承不同。public class Hashtable extends Dictionary implements Map public class HashMap extends AbstractMap implements Map②Hashtable 中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。在多线程...

2019-12-29 22:18:38 93

原创 Java栈内存和堆内存

首先说明栈内存和堆内存里存放的是什么栈内存中存放函数中定义的一些基本类型的变量和对象的引用变量; 堆内存中存放new创建的对象和数组。简单的来说,堆主要是用来存放对象的,栈主要是用来执行程序的这么做是因为栈的存取速度快,栈数据可以共享,但是栈中的数据大小和生存期必须确定,缺乏灵活性中存放一些基本类型的对象和对象句柄 堆是操作系统分配给自己内存,由于从操作系统管理的内存分配,...

2019-12-29 21:09:59 83

原创 深入理解java虚拟机(4)HotSpot垃圾收集器与内存分配策略

HotSpot 虚拟机提供了多种垃圾收集器,每种收集器都有各自的特点,虽然我们要对各个收集器进行比较,但并非为了挑选出一个最好的收集器。我们选择的只是对具体应用最合适的收集器。新生代垃圾收集器Serial 垃圾收集器(单线程)只开启一条 GC 线程进行垃圾回收,并且在垃圾收集过程中停止一切用户线程(Stop The World)。一般客户端应用所需内存较小,不会创建太多对象,而且堆...

2018-07-22 18:22:54 118

原创 深入理解虚拟机(3)垃圾搜集策略与算法

程序计数器、虚拟机栈、本地方法栈随线程而生,也随线程而灭;栈帧随着方法的开始而入栈,随着方法的结束而出栈。这几个区域的内存分配和回收都具有确定性,在这几个区域内不需要过多考虑回收的问题,因为方法结束或者线程结束时,内存自然就跟随着回收了。而对于 Java 堆和方法区,我们只有在程序运行期间才能知道会创建哪些对象,这部分内存的分配和回收都是动态的,垃圾收集器所关注的正是这部分内存。判定对象是...

2018-07-22 18:21:55 106

原创 深入理解Java虚拟机(2)hotSpot虚拟机探秘

对象的内存布局在HotSpot虚拟机中,对象的内存布局分为以下3块区域: 对象头(报头) 实例数据(实例数据) 对齐填充(填充) 对象头对象头记录了对象在运行过程中所需要使用的一些数据: 哈希码 GC分代年龄 锁状态标志 线程持有的锁 偏向线程ID 偏向时间戳 对象头可能包含类型指针,通过该指针能...

2018-07-22 18:20:47 133

转载 Java GC、新生代、老年代

1,堆内存Java中的堆是JVM所管理的最大的一块内存空间,主要用于存放各种类的实例对象。在Java中,堆被划分成两个不同的区域:新生代(Young),老年代(Old )新生代(杨氏)又被划分为三个区域:伊甸,从幸存者,为了幸存者。这样划分的目的是为了使JVM能够更好的管理堆内存中的对象,包括内存的分配以及回收。堆的内存模型大致为:从图中可以看出:  堆大小=新生代+老年代。其中,堆的大小可以...

2018-07-22 18:15:02 595

原创 问题:为什么static 会比程序入口先执行?

问题:为什么static 会比程序入口先执行?先来说static static是静态标志,包括静态代码块,静态成员变量,静态方法在用static 方法前没有创建任何对象,static是最先进行初始化的 ,所以有: 1. 静态方法不能使用this关键字,因为this指向当前对象。 2. 静态方法内部不能调用非静态方法和非静态成员变量(非静态方法内部可以调用静态方法或...

2018-04-14 10:24:40 460

原创 MySQL数据库增删改查

数据增删改查注意:MySQL中不区分大小写一、 添加添加数据到一张表中 语法:inser [ into] <表名> [列名] values (值列表) INSERT INTO students (id, name) VALUES ('16408100126', 'ZZH')注意:添加数据时如果不写字段名,将会默认向所有字段中添加值,确保所有...

2018-04-14 09:14:44 328

原创 Java——异常

5.01_异常(异常的概述和分类)5.02_异常(JVM默认是如何处理异常的)5.03_异常(try…catch的方式处理异常1)5.04_异常(try…catch的方式处理异常2)5.05_异常(编译期异常和运行期异常的区别)5.06_异常(Throwable的几个常见方法)5.07_异常(throws的方式处理异常)5.08_异常(throw的概述以及和throws的区别...

2018-03-13 19:18:24 910

原创 Java——集合框架HashSet、TreeSet

4.01_集合框架(HashSet存储字符串并遍历)4.02_集合框架(HashSet存储自定义对象保证元素唯一性)4.03_集合框架(HashSet存储自定义对象保证元素唯一性图解及代码优化)4.04_集合框架(HashSet如何保证元素唯一性的原理)4.05_集合框架(LinkedHashSet的概述和使用)4.06_集合框架(产生10个1-20之间的随机数要求随机数不能重复...

2018-03-13 19:12:45 167

原创 Java——集合框架ArrayList

3.01_集合框架(去除ArrayList中重复字符串元素方式)A:案例演示需求:ArrayList去除集合中字符串的重复值(字符串的内容相同)思路:创建新集合方式/** * A:案例演示 * 需求:ArrayList去除集合中字符串的重复值(字符串的内容相同) * 思路:创建新集合方式 */public static void main(String[] args) ...

2018-03-13 19:04:00 118

原创 Java——记录集合之美

01_集合框架对象数组的概述和使用02_集合框架集合的由来及集合继承体系图03_集合框架Collection集合的基本功能测试04_集合框架集合的遍历之集合转数组遍历05_集合框架Collection集合的带All功能测试06_集合框架集合的遍历之迭代器遍历07_集合框架Collection存储自定义对象并遍历08_集合框架迭代器的原理及源码解析了解09_集合框架List集...

2018-02-08 19:33:24 191

原创 Java——正则表达式

01_常见对象正则表达式的概述和简单使用02_常见对象字符类演示03_常见对象预定义字符类演示04_常见对象数量词05_常见对象正则表达式的分割功能06_常见对象把给定字符串中的数字排序07_常见对象正则表达式的替换功能08_常见对象正则表达式的分组功能09_常见对象Pattern和Matcher的概述10_常见对象正则表达式的获取功能11_常见对象Math类概述和方法...

2018-02-02 14:52:13 229

原创 Java socket 双向通信

一个简单socket通信

2017-11-12 09:53:31 299

原创 Java配置文件properties的读取

先理解一下Java properties类Java Properties类Java中有个比较重要的类Properties(Java.util.Properties),主要用于读取Java的配置文件,各种语言都有自己所支持的配置文件,配置文件中很多变量是经常改变的,这样做也是为了方便用户,让用户能够脱离程序本身去修改相关的变量设置。像Python支持的配置文件是.ini文件,同样,它也有自己读取配置文

2017-11-08 08:06:26 155

原创 Java文件字符流读取

字符流读取字符输入流 FileReade的常用构造方法包括以下几种。 FileReader(String fileName):根据文件名创建FileReader对象。 FileReader(File file):根据File对象创建FileReader对象。 Reader的常用包括方法包括以下几种。 Int read():读取单个字符。返回字符的整数值,如果已经

2017-11-06 23:16:27 2369

原创 Java线程

一:什么是线程 可以把一个正在运行的软件看做一个进程,就像一个大的管道,这个管道不运送什么东西,但里面有很多个小的管道,每个小管负责的东西不同,而这些小管道就可以看做是一个个线程。 如果运行的是一个单线程的程序的话,而这个线程需要连续运行几个功能时如果正在运行的那个功能因碰到一个等待或者睡眠的指令的话,他就会停在那里不做任何事,此是这个CPU就空闲在那里,同时还会等待直到程序重新继续运行。

2017-11-06 13:07:26 148

原创 Java文件--递归删除

Java文件删除首先判断文件是否为空,如果文件夹不为空的话,则这个文件夹不能够直接调用.delete()方法删除,需要用递归方法将文件中的文件一个个删除。File类 File 类的实例是不可变的;也就是说,一旦创建,File 对象表示的抽象路径名将永不改变。

2017-10-26 13:15:34 245

原创 Java时间--毫秒转换成特定格式

SimpleDateFormat类SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化。 SimpleDateFormat 使得可以选择任何用户定义的日期-时间格式的模式。但是,仍然建议通过 DateFormat 中的 getTimeInstance、getDateInstance 或 g

2017-10-26 11:35:12 3222

原创 Java文件--复制

Java文件复制 (字符型)

2017-10-26 00:21:26 220 1

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2017-10-26 00:10:20 105

原创 Android--监听网络变化

监听网络变化

2017-07-28 13:02:11 265

原创 第一行代码3.7.2编写精美的聊天界面

1.为什么要添加依赖库 2.layout_margin的含义 3.ViewHolder的使用方法及简单介绍

2017-07-06 17:58:21 695

原创 对dp,sp,px等单位的简单解析

我们这种新手遇到这种问题总有一点纠结,希望借此能够加深自己的理解 px: 即像素,1px代表屏幕上一个物理的像素点; px单位不被建议使用,因为同样100px的图片,在不同手机上显示的实际大小可能不。偶尔用到px的情况,是需要画1像素表格线或阴影线的时候,用其他单位如dp会显得模糊。 dp 这个是最常用但也最难理解的尺寸单位。它与“像素密度”密切相关,所以首先我们解释一下什

2017-07-06 16:50:38 269

原创 Android studio 错误集锦(1)

Android错误(1)

2017-07-06 15:35:45 273

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除