08 2018 档案
摘要:一、单道和多道系统。 二、分时系统。多路独立及时处理。 三、实时系统。 四、操作系统四大特点。 1、并发。 2、共享。 3、虚拟。 4、异步。
阅读全文
摘要:一、进程管理。 1、进程与线程的区别进程: 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位(具有动态、并发、独立、异步的特性,以及就绪、执行、阻塞3种状态);引入进程是为了使多个程序可以并发的执行,以提高系统的资源利用率和吞吐量。 线程:是比进程更小的可独立运行的基本单位,可以看做
阅读全文
摘要:Linux系统「文件查找」 Linux系统文件中常用属性为以下内容:名称,大小,权限,属主,属组,修改时间,访问时间等,在庞大的系统中,需要在prompt中查询文件,需要借助其查找工具实现,以此可以查询相同或要求指定属性的文件,Centos及EHLE类系统实现查询工具有:Locate、find工具。
阅读全文
摘要:一、文件和目录。(文件目录的增删改查) 二、用户和组。 三、网络。 四、系统。 五、软件管理。 六、 七、 八、 九、服务。 十、
阅读全文
摘要:一、简介。 现代操作系统比如,Linux,Windows等,都是支持“多任务”的操作系统。所谓多任务,指的就是操作系统可以同时运行多个任务。也就是在同一台电脑上,可以同时上网、听歌、使用Word,在过去单核的CPU上都已经可以支持多任务,实现的方式是操作系统让各个任务轮流交替执行。,比如任务1执行0
阅读全文
摘要:一、对查询进行优化,要尽量避免全表扫描,首先应考虑在 where / group by / order by 涉及的列上建立索引。 1、索引失效情况。 SQL什么条件会使用索引? 当字段上建有索引时,通常以下情况会使用索引: INDEX_COLUMN = ? INDEX_COLUMN > ? IND
阅读全文
摘要:一、客户端分担。 1、大量的复杂的运算放在客户端处理。 什么是复杂运算,一般我认为是一秒钟CPU只能做10万次以内的运算。如含小数的对数及指数运算、三角函数、3DES及BASE64数据加密算法等等。如果有大量这类函数运算,尽量放在客户端处理,一般CPU每秒中也只能处理1万-10万次这样的函数运算,放
阅读全文
摘要:优化: 一、表设计优化。 1、适当的反范式。范式化的更新操作通常比反范式化要快,范式化设计的缺点是通常需要关联。反范式的优点:避免关联,避免了随机I/O,能使用更有效的索引策略。 2、合适的索引。 3、大字段用垂直拆分。 4、大表用水平拆分。 5、抛弃外键。 6、合适的数据类型。 二、sql语句优化
阅读全文
摘要:一、ReentrantLock类中的方法解读。 1、lock方法。实现了接口Lock中的lock方法。这里实际上是调用了sync成员变量的lock方法来实现。所以取决于sync的实现。 2、unlock方法。实现了接口Lock中的unlock方法。这里实际上是调用了sync成员变量的release方
阅读全文
摘要:一、简介。 ReentrantLock 是一个互斥锁,在基本行为和机制上与synchonized一样,只不过synchonized用方法和声明访问了隐式的锁监视器,但是ReentrantLock 做了功能上的扩展。ReentrantLock 被最后一个成功lock,但是还没unlock的线程拥有。当
阅读全文
摘要:点多
阅读全文
摘要:一、成员变量。 1、目录。 2、state。该变量标记为volatile,说明该变量是对所有线程可见的。作用在于每个线程改变该值,都会马上让其他线程可见,在CAS(可见锁概念与锁优化)的时候是必不可少的。在AQS类中,不会直接操作这个值,而是交由它的子类去操作和定义他的作用。 ###########
阅读全文
摘要:一、有时候我们可能不会在自己家呆着,比如旅游、走亲戚,出国等,有时候如果没带上必需品,我们会感到无比不舒服,那么我们应该带哪些东西呢?这里假设在外时间超过一天。 1、手机。如今,没手机是万万不能的,没有手机,整个人的灵魂都像丢了一样。另外如果在外呆的时间超过一天,那么最好还要带上手机充电器。 2、身
阅读全文
摘要:转载:https://www.jianshu.com/p/072b262cd089 先贴一张图片,虽然不知道是为什么要贴图,但是貌似这是简书的“潜规则”了。要说的是本文中的所有图片都是本人原创,我除了是一枚程序猿以外,还喜欢玩摄影。 我是一名程序猿,在上95年上初中的时候,别的还在都在打篮球、踢足球
阅读全文
摘要:############ https://blog.csdn.net/qq_35530330/article/details/90721911 对于 CentOS Stream,不要使用软碟通来制作 U 盘启动盘 https://blog.csdn.net/wangpaiblog/article/d
阅读全文
摘要:https://www.jianshu.com/p/ea90df2d48df 很多人都在寻找那些能够帮助他们快速提升设计能力的方法,但你是否想过,自己身上的哪些方面会对你的设计产生影响呢?是使用工具的技巧,对设计的理解和态度,还是你的生活习惯呢?我想说所有这些都是决定你的设计是否优秀的因素,而在这之
阅读全文
摘要:我们从小都能熟练地区分颜色,但为什么当我们需要运用色彩进行UI设计的时侯,却往往发现很难恰到好处地运用色彩,作出那些和谐得体、令人赏心悦目的设计来呢?……我觉得原因是我们对色彩的认识和实践不足,以及当我们做设计时,很容易会过度地使用色彩。作为设计初学者,你需要掌握基本的色彩理论,通过实践不断加深对色
阅读全文
摘要:链接:https://www.jianshu.com/p/d139cb264be9 无论你是做网页还是App设计,文字内容总是能占到整个版面将近80%的区域。因此理解字体与排版对UI设计师来说非常关键。你需要始终把内容的可读性放在首位去考虑和权衡你对字体与排版的选择。 字体的基础术语 了解字体设计的
阅读全文
摘要:链接:https://www.jianshu.com/p/744fb80e7d72 写给UI设计初学者们 几乎每隔几天我便能在简书或其他各类设计网站看到关于自学UI设计的分享文章。这些文章有一个共同的特点,就是描述作者如何从一个零基础的设计小白,通过种种途径,成长为一个熟练掌握PS或AI的设计达人的
阅读全文
摘要:假如java类里的成员变量是自身的对象,则新建该类对象时内存中怎么分配空间,我感觉似乎死循环了。 不过我想的肯定是错的,因为很多类的成员变量是自身对象,并且绝对无错,举个例子: 1.程序运行的时候会产生一个栈溢出错误的异常 Exception in thread “main” java.lang.S
阅读全文
摘要:一、AbstractQueuedSynchronizer类介绍。 该抽象类有两个内部类,分别是静态不可继承的Node类和公有的ConditionObject类。AbstractQueuedSynchronizer的核心实现是一个双向队列,队列中的每一个元素是一个Node。Node是AbstractQ
阅读全文
摘要:一、Lock源码。 1、是一个接口。一共有6个方法。 2、方法详细如下: (1)当前线程尝试获取锁。结果分两种情况,一是成功获取到锁,则返回;二是获取锁失败,则一直等待。不响应中断请求。 (2)当前线程释放掉自己所占用的锁。同时唤醒这个锁上的一个等待线程。(两个任务) (3)当前线程尝试以非公平的方
阅读全文
摘要:一、概述。 Comparator和Comparable两者都属于集合框架的一部分,都是用来在对象之间进行比较的,但两者又有些许的不同,我们先通过一个例子来看一下他们的区别,然后再分别学习下它们的源码。 先来看一下Comparable的例子,定义实体类Student,实现Comparable,重写co
阅读全文
摘要:一、MD5算法 1、MD5算法是什么? 2、MD5算法的优点 3、MD5算法的不足 4、MD5加密的应用场景 (1)登录、注册、修改密码等简单加密操作 ①这个过程为什么要加密?为什么要使用MD5加密? ②直接使用MD5加密的不可靠之处(涉及到彩虹表这个关键词) ③那加密时比较正确的方案是什么?(涉及
阅读全文
摘要:1、安全。 内容采用对称加密,身份认证。建立一个信息安全通道来保证数据传输的安全。采用对称加密算法,来加密真实传输的数据。采用非对称加密算法(公钥和私钥),来保证连接的安全性。防止内容被第三方冒充和篡改。采用散列算法,来验证数据的完整性。 散列算法:MD5单向散列算法(128位),SHA1散列算法。
阅读全文
摘要:1、用途。 GET方法一般用于查询并获取信息,这意味着它是幂等的(对同一个url的多个请求,返回结果完全一样),因为没有修改资源状态,所以它是安全的。而POST一般用于更新资源信息,既不是幂等,也不是安全的。 2、缓存。 GET方法请求的数据会被浏览器缓存下来,会留下历史记录。而POST方法提交的数
阅读全文
摘要:1、下载地址。 https://www.7-zip.org/ 2、傻瓜式安装。
阅读全文
摘要:##################################################################### 我们知道多线程操作共享资源时,会出现三个问题:可见性、有序性以及原子性。 一般情况下,我们采用synchronized同步锁(独占锁、互斥锁),即同一时间只有一
阅读全文
摘要:一、CMPXCHG汇编指令详解。 这条指令将al\ax\eax\rax中的值与首操作数比较: 1.如果相等,第2操作数的直装载到首操作数,zf置1。(相当于相减为0,所以0标志位置位) 2.如果不等, 首操作数的值装载到al\ax\eax\rax,并将zf清0 二、举例说明。 例如: CMPXCHG
阅读全文
摘要:一、动画演示。 1、https://www.scss.tcd.ie/Jeremy.Jones/vivio/caches/MESIHelp.htm 2、https://www.jianshu.com/p/81770751c11c ####################################
阅读全文
摘要:红芯公司宣布融资当天,红芯浏览器被曝出打开安全目录后出现大量和谷歌 chrome 浏览器一致的同名文件,其安装程序的文件属性中也显示了原始文件名 chrome.exe。 8 月 15 日,号称自主可控、自主研发浏览器核心产品的红芯公司宣布完成 2.5 亿元C轮融资。就在其宣布融资当天,红芯浏览器被曝
阅读全文
摘要:一、一共11个成员变量。 二、详情介绍。 1、value值。这个是Integer类的唯一标志。最重要的实例属性。 2、最小值和最大值常量。注意,计算机里面是以补码形式保存的,因此用十六进制时,给的数据必须是一个数的补码形式赋值。这里是32位机器,所以最大值和最小值表示如下: 3、数据位数和字节数常量
阅读全文
摘要:一、源码。 1、equals源码。可以看出,比较的是两者的类型相同且内容相同。即是否有相等的int类型的value值。 ##########################################################################################
阅读全文
摘要:在开始详细的说明问题之前,我们先看一段代码 这段代码输出的结果是什么呢? 答案是: 是不是感到奇怪呢?为什么127的时候==是true,128的时候就变成了false?其实要回答这个问题不难。 Integer在赋值的时候会发生自动装箱操作,调用Integer的valueOf方法,那么我们看一下jav
阅读全文
摘要:一、个人看法。 1、一般都是四个菜单或者五个菜单,这个是绝对主流,我估计占比达99%。当然也有三个菜单图标的,也有零个菜单图标的 2、如果该app软件功能复杂,那么尽量选择5个图标布局。比如苹果app store,支付宝,淘宝,京东,美团,招商银行,爱奇艺,优酷,12306。他们的功能十分复杂多样,
阅读全文
摘要:一、Object类中一共有12个方法。一个私有方法,两个保护方法,9个公共方法。另外还有一个静态代码块。 1、registerNatives方法。私有静态本地无参数无返回值。 2、finalize方法。保护方法。无参数无返回值。 该方法用于释放资源。因为无法确定该方法什么时候被调用,很少使用。 3、
阅读全文
摘要:#################### 租房注意事项: 你觉得哪些人有可能打开你的租房门呢? 一是房东; 二是以前该房间的租客; 三是技术开锁,比如小偷这类人; 高楼注意事项: 一是高楼火灾预案:准备一根高空逃生绳是有必要的; 二是不要在高楼底下驻留:因为总有人会高空抛物; ###########
阅读全文
摘要:一、Object类中clone的实现。 二、clone详解。 看,clone()方法又是一个被声明为native的方法,因此,我们知道了clone()方法并不是Java的原生方法,具体的实现是有C/C++完成的。clone英文翻译为"克隆",其目的是创建并返回此对象的一个副本。形象点理解,这有一辆科
阅读全文
摘要:一、源码。 1、公共本地,且可继承但不可重写。 2、公共,且可继承但不可重写。 3、公共,且可继承但不可重写。 二、解释。 1、因为这些方法是Object类中的非静态的public方法,而任何其他类都默认继承了Object类,因此所有类都继承了这些方法,也就是所有对象都有的方法,同时这些方法又是fi
阅读全文
摘要:译者注 :你可能会觉得Java很简单,Object的equals实现也会非常简单,但是事实并不是你想象的这样,耐心的读完本文,你会发现你对Java了解的是如此的少。如果这篇文章是一份Java程序员的入职笔试,那么不知道有多少人会掉落到这样的陷阱中。原文转自http://www.artima.com/
阅读全文
摘要:一.内存模型的相关概念。 大家都知道,计算机在执行程序时,每条指令都是在CPU中执行的,而执行指令过程中,势必涉及到数据的读取和写入。由于程序运行过程中的临时数据是存放在主存(物理内存)当中的,这时就存在一个问题,由于CPU执行速度很快,而从内存读取数据和向内存写入数据的过程跟CPU执行指令的速度比
阅读全文
摘要:1.volatile关键字的两层语义 一旦一个共享变量(类的成员变量、类的静态成员变量)被volatile修饰之后,那么就具备了两层语义: 1)保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的。 2)禁止进行指令重排序。 先看一段代码,假如线
阅读全文
摘要:一、重排序。 1、为什么需要重排序? 现在的CPU一般采用流水线来执行指令。一个指令的执行被分成:取指、译码、访存、执行、写回、等若干个阶段。然后,多条指令可以同时存在于流水线中,同时被执行。 指令流水线并不是串行的,并不会因为一个耗时很长的指令在“执行”阶段呆很长时间,而导致后续的指令都卡在“执行
阅读全文
摘要:创建和启动线程 在java中创建一个线程如下: Thread thread = new Thread(); 调用方法start()来启动一个线程: thread.start(); 这个例子没有指定线程执行任何代码,线程将会在启动之后停止。 有两种方式指定线程应该执行什么代码。第一种方式就是创建一个T
阅读全文
摘要:1、如何优雅地创建对象? 那么就可以考虑使用5种创建型模式。 (1)一个类在整个应用中,一个对象足矣,则单例模式。对象唯一。 (2)一个类在整个应用中,多个相同对象且相互不影响,则原型模式。对象复制。 (3)一个类在整个应用中,构建过程复杂且有序,则建造者模式。对象复杂。注重细节。 (4)一个类在整
阅读全文
摘要:类与类之间的耦合度越低,一个单独的类就越容易进行测试。当类与类之间都是高度的耦合在一起的时候,单元测试就变得愈发的困难,而且得到的bug也越难划分和分离。在OOP的编程思想中,类是最基本的单元,每一个类也要保证一些基本的原则,其中,单一职责的原则就是一个类需要保证的,那么单元测试的任务就是来测试这些
阅读全文
摘要:1 场景问题 1.1 报价管理 向客户报价,对于销售部门的人来讲,这是一个非常重大、非常复杂的问题,对不同的客户要报不同的价格,比如: 对普通客户或者是新客户报的是全价 对老客户报的价格,根据客户年限,给予一定的折扣 对大客户报的价格,根据大客户的累计消费金额,给予一定的折扣 还要考虑客户购买的数量
阅读全文
摘要:目录 本文的结构如下: 引言 什么是享元模式 模式的结构 典型代码 代码示例 单纯享元模式和复合享元模式 模式扩展 优点和缺点 适用环境 模式应用 一、引言 衣服小了,没有办法只能买新的,衣服破了一个小口,无伤大雅,则可以穿针引线缝补妥当。如果是黑色的衣服,选上黑色的细线是合适的,灰色的衣服配上灰色
阅读全文
摘要:https://www.cnblogs.com/V1haoge/p/6489827.html 定义 属于对象的结构模式,有时又叫做“部分——整体”模式。组合模式将对象组织到树结构中,可以用来描述整体和部分的关系。组合模式可以使客户端将单纯元素与复合元素同等看待。 组合模式 组合模式把部分和整体的关系
阅读全文
摘要:一、角色。 1、目标接口Target:n个抽象方法。 2、目标接口实现类ConcreteTarget:多个实现类。至少实现n个方法。 3、抽象桥接类AbstractBridge:持有目标接口Target的关联对象属性(一般都有属性的getter和setter方法)。m个抽象方法。 4、抽象桥接实现类
阅读全文
摘要:深入浅出外观模式(一) 外观模式是一种使用频率非常高的结构型设计模式,它通过引入一个外观角色来简化客户端与子系统之间的交互,为复杂的子系统调用提供一个统一的入口,降低子系统与客户端的耦合度,且客户端调用非常方便。 1.外观模式概述 不知道大家有没有比较过自己泡茶和去茶馆喝茶的区别,如果是自己泡茶需要
阅读全文
摘要:一、角色。 1、主题类Subject:接口或者抽象类或者类。 2、真实类RealSubject:继承或实现了主题类Subject。 3、代理类Proxy:继承或实现了主题类Subject,同时直接持有真实类对象。 二、更高更。 1、 2、 三、模式的结构 代理模式的UML类图如下: 20171130
阅读全文
摘要:https://www.jianshu.com/p/e4397d9b7a78 一、角色。 1、基类Component:可以是接口和抽象类。 2、被装饰者类ConcreteComponent:基类Component的实现者。 3、抽象装饰者类AbstractDecorator:基类Component的
阅读全文
摘要:一、对象适配器(关联委派) 1、被适配者类Adaptee:原有的属性和方法。 2、目标接口Target:新增一些方法。 3、适配器类Adapter:持有被适配者类Adaptee的对象,即Adaptee类委派给Adapter类,因此Adaptee类和它的子类都可以适用。实现目标接口Target。持有原
阅读全文
摘要:对于很多刚刚接触UML的童鞋,可能会对类之间的关联与依赖关系不太理解,今天小菜就浅薄的讲一下。 依赖 表现为函数中的参数(use a),是类与类之间的连接,表示一个类依赖于另一个类的定义,其中一个类的变化将影响另外一个类。例如如果A依赖于B,则B体现为局部变量,方法的参数、或静态方法的调用。如电视(
阅读全文
摘要:一、原型模式的作用? 1、基本就是你需要从A的实例得到一份与A内容相同,但是又互不干扰的实例的话,就需要使用原型模式。 2、用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。这个其实和C++的拷贝构造函数的作用是相似的(但不相同),实际上就是动态抽取 当前对象 运行时 的 状态。 3、
阅读全文
摘要:http://blog.51cto.com/craftsman001/1662488 https://blog.csdn.net/itachi85/article/details/50644745 建造者模式需要四大角色: (1)目标者类Target:有n个属性。不能多变。 (2)抽象建造者接口Bu
阅读全文
摘要:首先介绍一下单例模式: 单例模式(Singleton),也叫单子模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据
阅读全文
摘要:http://blog.51cto.com/zero01/2070033 抽象工厂模式(Abstract Factory),是23种设计模式之一。DP中是这么定义抽象工厂模式的: 抽象工厂模式(Abstract Factory),提供一个创建一系列相关或互相依赖对象的接口,而无需指定它们具体的类。
阅读全文
摘要:目标类接口:Product 目标类集合:AppleProduct,GoogleProduct,BananaProduct 工厂类接口:Factory。提供获取目标类接口的方法。 工厂类集合:AppleFactory,GoogleFactory,BananaFactory。与目标类一一对应。即一个目标
阅读全文
摘要:如何创建一个对象? public interface Product {...} public class AppleProduct implements Product {...} public class GoogleProduct implements Product {...} public
阅读全文
摘要:一、安装。 1、 2、 二、使用。 1、 2、
阅读全文
摘要:一、安装。 1、 2、 3、 二,使用。 1、 2、
阅读全文
摘要:一、安装。 1、 2、 二、使用。 1、 2、
阅读全文
摘要:一、安装。 1、 2、 3、 4、 、 二、使用 1、 2、 3、 结果分析,如果没有添加@Setter注解,则LombokTest中的student示例无法使用setAge()等方法。使用lombok之后,省去了许多没必要的get,set,toString,equals,hashCode代码,简化
阅读全文
摘要:Linux系统中使用以下命令来查看文件的内容: cat 由第一行开始显示文件内容 tac 从最后一行开始显示,可以看出 tac 是 cat 的倒著写! nl 显示的时候,顺道输出行号! more 一页一页的显示文件内容 less 与 more 类似,但是比 more 更好的是,他可以往前翻页! he
阅读全文
摘要:区别于who命令,w命令不仅可以看到登录服务器的用户信息,而且可以看到这些用户做了什么 1、查看该命令的帮助信息。 # w --help 2、查看该命令的版本信息。 # w --version 3、查看登录服务器的用户信息,而且可以看到这些用户做了什么: # w 第一行显示系统的汇总信息,字段分别表
阅读全文
摘要:作为一名系统管理员,我们需要弄清楚在一个特定的时间点都有谁活跃在系统上。必须严密监视我们的服务器。但是,我们当然不可能一天24小时都盯着系统。在linux系统中,我们可以使用who命令查看登录者信息。who命令能够打印 当前都有谁登录到系统中 的相关信息 。who命令只会显示真正登录到系统中的用户。
阅读全文
摘要:logname命令,可以显示自己初次登录到系统中的用户名,主要识别sudo前后情形,与whoami相反。 1、查看该命令的帮助信息。 # logname --help 2、查看该命令的版本信息。 # logname --version 3、查看初始登录的实际用户名称: # logname 4、su切
阅读全文
摘要:who am i 显示的是实际用户的用户名,即用户登陆的时候的用户ID。此命令相当于who -m。 用Linux的术语来解释就是:(实际用户=uid,即user id。有效用户=euid,即effective user id) 好了,明白了两者区别之后,我们来说说who这个命令。有人会问,为什么我s
阅读全文
摘要:whoami命令用于打印当前有效的用户名称,相当于执行id --un命令。 1、显示该命令帮助信息: # whoami --help 2、显示该命令的版本信息: # whoami --version 3、打印当前有效的用户名称,相当于执行id --un命令。 # whoami 4、用户进行切换后,那
阅读全文
摘要:在Linux操作系统中,所有外围设备都有其名称与代号,这些名称代号以特殊文件的类型存放于/dev目录下。你可以执行tty指令查询目前使用的终端机的文件名称。 1、命令帮助: # tty -- help 2、只返回该命令的状态码: #tty --silent 3、查看当前使用的终端机文件名称: # t
阅读全文
摘要:当我们想知道某个用户的UID和GID时id命令是非常有用的。一些程序可能需要UID/GID来运行。id使我们更加容易地找出用户的UID以GID而不必在/etc/group文件中搜寻。 1、获取指定用户的uid: # id [username] -u 2、获取指定用户的所属组id: # id [use
阅读全文
摘要:解决办法是:在main函数中测试方可有效。 public static void main(String[] args){ }
阅读全文

浙公网安备 33010602011771号