摘要:a. 特性 两个接口都是继承自Collection?,是常用来存放数据项的集?#24076;?#20027;要区别如下: ① List和Set之间很重要的一个区别是是否允许重复元素的存在,在List中允许插入重复的元素,而在Set中不允许重复元素存在。 ? ② 与元素先后存放?#25215;?#26377;关,List是有序集?#24076;?#20250;保留元素插入时的顺 阅读全文
posted @ 2019-12-30 22:36 晓乎 阅读 (95) 评论 (0) 编辑
摘要:一、对象头 通常在java中一个对象主要包含三部分: 对象头 主要包含GC的状态、、类型、类的模板信息(地址)、synchronization状态等,在后面介绍。 实例数据:程序代码中定义的各种类型的字?#25991;?#23481;。 ?#20113;?#25968;据:对象的大小必须是 8 字节的整数倍,此项根据情况而定,若对象头和实例数据大小正 阅读全文
posted @ 2019-11-22 20:57 晓乎 阅读 (230) 评论 (0) 编辑
摘要:1. 最简单的网络通信——同步阻塞通信(BIO) 首先来看一个传统简单的网络通信案例,该案例是基于同步阻塞的I/O,服务端代码如下 客户端代码如下: 看到当假设100个客户端同时连接服务器的时候,单线程下服务端对接收的请求只会一个一个去处理,导致很多客户端请求被阻塞,处于等待情况,这个时候,通常的服 阅读全文
posted @ 2019-11-14 18:44 晓乎 阅读 (257) 评论 (0) 编辑
摘要:1. 问题的引出 线程安全归根结底?#26786;?#35828;是内存安全,在jvm内存模型中,有一块特殊的公共内存空间,称为堆内存,进程内的所有线程都?#26786;?#35775;问并修改其中的数据,就会造成潜在的问题。因为堆内存空间在没有保护机制的情况下,你放进去的数据,可能被别的线程篡改。如下代码: 本来期望的值是20000,可是最终输出的 阅读全文
posted @ 2019-10-23 19:46 晓乎 阅读 (223) 评论 (0) 编辑
摘要:1. 进程与线程 通常,一个任务就是一个进程(Process),比如打开一个浏览器就是启动一个浏览器进程,打开一个Word就启动了一个Word进程。大多时候一个进程需要同时干很多件事情,比如Word,它?#26786;?#21516;时进行打字、拼写检查、打印等事情。在一个进程内部,要同时干多件事,就需要同时运行多个“子任务 阅读全文
posted @ 2019-10-21 18:59 晓乎 阅读 (235) 评论 (0) 编辑
摘要:Apache Log4j是一个基于Java的日志记录工具,它的日志级别按下面?#25215;?#36882;减: 下面介绍如何在java项目中如何使用Log4j。 1. 配置maven,引入jar包 2. 配置log4j的配置文件 其配置文件名为log4j.properties,需要手动在java/resources下创建, 阅读全文
posted @ 2019-10-18 16:39 晓乎 阅读 (692) 评论 (1) 编辑
摘要:题?#26869;?#36848; 给你一个?#22336;?#20018; s 和一个?#22336;?#35268;律 p,请你来实现一个支持 '.' 和 '*' 的正则表达式匹配。 所谓匹配,是要涵盖 整个?#22336;?#20018; s的,而不是部分?#22336;?#20018;。 说明: s 可能为空,且只包含从 a-z 的小写字母。 p 可能为空,且只包含从 a-z 的小写字母,以及?#22336;?#160;. 和 *。示例 1 阅读全文
posted @ 2019-10-10 18:29 晓乎 阅读 (142) 评论 (0) 编辑
摘要:Introduction 索引在数据管理中起到很重要的作用,很多索引结构都会采用访问速度快而且内存消耗少的trie树,但一般常见的trie树索引结构都强调效率而忽视内存的效率,他们的效率虽然高,但内存的消耗比较大。这篇文章提出了一?#20013;?#30340;树形结构 Hyperion,在效率上做到对?#27573;?#26597;询和点查询都能够 阅读全文
posted @ 2019-10-05 20:20 晓乎 阅读 (330) 评论 (0) 编辑
摘要:1. 介绍 一般一个程序在内存中?#26786;?#22823;体划分为三部分——静态内存(局部的static对象、类static数据成员以及所有定义在函数或者类之外的变量)、栈内存(保存和定义在函数或者类内部的变量)和动态内存(实质上这块内存池就是堆,通常通过new/malloc操作申请的内存)。对于静态内存和栈内存来说, 阅读全文
posted @ 2019-08-30 14:51 晓乎 阅读 (379) 评论 (1) 编辑
摘要:1. 拷贝构造函数 如果一个构造函数的第一个参数是自身类型的引用,且额外参数都有默认值,则此构造函数是拷贝构造函数。 而合成拷贝构造函数是?#31508;?#30340;拷贝构造函数,即默认的拷贝构造函数,一般情况下,它的实际操作是对所有成员变量进行一次赋值操作。如果成员的?#31508;?#30340;赋值操作不能满足需求(如是一个链表或含有指针) 阅读全文
posted @ 2019-08-29 22:05 晓乎 阅读 (135) 评论 (0) 编辑
总访问: counter for blog 次
三剑客和女王APP
广西快乐10分 25选5 股票配资亏损怎么算 北单比分3串一奖金怎么算 广西快乐10分 证券分析师有用吗 金管家期货配资 中国南车股票分析 怎样分析股票k线图的走势分析 上市股票指数 私募股权基金配资 哪些理财平台比较安全 新疆18选7 股票配资是什么意思,合法吗 山西十一选五 3.10股票推荐