三分钟学会《门面模式》
无论是面试还是个人的提升,设计模式是必学的。今天来讲解门面(外观)模式~ 不知道大家有没有了解过门面模式,我去翻了一下《设计模式之禅》,发现非常简单,所以在这给大家分享一下。 一个电源总开关可以控制所有电器的打开或关闭状态。 无论是空调、冰箱、电视、电脑、风扇等等,只要是电器都…
策略模式原来这么简单!
无论是面试还是个人的提升,设计模式是必学的。今天来讲解策略模式~ 我一次听到策略模式这个词,是在我初学JDBC的时候。不知道大家有没有用过DBUtils这个组件。当时初学跟着视频学习,方立勋老师首先是让我们先自己封装一下JDBC的一些常用的操作(实际上就是模仿DBUtils这个…
Android逆向笔记 —— AndroidManifest.xml 文件格式解析
做过 Android 开发的同学对 AndroidManifest.xml 文件肯定很熟悉,我们也叫它 清单文件 ,之所以称之为清单文件,因为它的确是应用的 “清单”。它包含了应用的包名,版本号,权限信息,所有的四大组件等信息。在逆向的过程中,通过 apk 的清单文件,我们可以…
外行人都能看得懂的机器学习,错过了血亏!
没错,这篇主要跟大家一起入门机器学习。作为一个开发者,”人工智能“肯定是听过的。作为一个开发面试者,肯定也会见过”机器学习“这个岗位(反正我校招的时候就遇到过)。 首先我们来简单看看人工智能、深度学习、机器学习这些术语和它们之间的关系究竟是怎么样的。 不知道听到“人工智能”大家…
Smali 语法解析 —— 类
上一篇学习了 Smali 的数学运算,条件判断和循环,接下来学习类的基本使用,包括接口,抽象类,内部类等等。 可以看到在当前目录 out 文件夹下生成了三个文件 Car.smali IFly.smaii 和 BMW.smali。下面逐一进行分析。 抽象类的表示没有什么特殊的地方…
我是如何将博客转成PDF的
之前有读者问过我:“3y你的博客有没有电子版的呀?我想要份电子版的”。我说:“没有啊,我没有弄过电子版的,我这边有个文章导航页面,你可以去文章导航去找来看呀”..然后就没有然后了。 最近也有个读者提过这个问题,然后这两天也没什么事做,所以打算折腾折腾,看看怎么把博客转成PDF。…
Smali —— 数学运算,条件判断,循环
通过上一篇 Smali 语法解析——Hello World 的学习,了解了 Smali 文件的基本格式。这一篇从最基本的数学运算,条件判断,循环等开始,更加详细的了解 Smali 语法。 通过 javac dx 和 baksmali 工具生成对应的 smali 文件,具体方法在…
Smali 语法解析——Hello World
通过上一篇文章的学习,我们都知道了 Java 代码是如何执行的。Java 编译器将 .java 源文件编译为 .class 字节码文件,JVM(Java虚拟机)将字节码解释为机器代码最终在目标机器上执行。而在 Android 中,代码是如何执行的呢 ?首先看下面这张图: 这里的…
Class 文件格式详解
Write once, run everywhere!,我们都知道这是 Java 著名的宣传口号。不同的操作系统,不同的 CPU 具有不同的指令集,如何做到平台无关性,依靠的就是 Java 虚拟机。计算机永远只能识别 0 和 1组成的二进制文件,虚拟机就是我们编写的代码和计算机…
面试前必须知道的MySQL命令【explain】
刷面试题的时候,不知道你们有没有见过MySQL这两个命令:explain和profile(反正我就见过了).. 之前虽然知道这两个命令大概什么意思,但一直没有去做笔记。今天发现自己的TODO LIST有这么两个命令,于是打算来学习一番,记录一下~ 发现很使用起来很简单,只要ex…
从零单排学Redis【铂金二】
Redis提供了哨兵(Sentinal)机制供我们解决上面的情况。如果主服务器挂了,我们可以将从服务器升级为主服务器,等到旧的主服务器(挂掉的那个)重连上来,会将它(挂掉的主服务器)变成从服务器。 主服务器挂了,主从复制操作就中止了,并且哨兵系统是可以察觉出主服务挂了。: 这篇…
从零单排学Redis【铂金一】
这篇文章主要讲的是Redis主从复制。因为Redis集群的知识点有点多,所以铂金上分得要好几篇~ Redis也跟关系型数据(MySQL)一样,如果有过多请求还是撑不住的。 单台Redis支持的并发量也是有限的。 万一这台Redis挂了,所有的请求全走关系数据库了,那就更炸了。 …
还在用Synchronized?Atomic你了解不?
之前在学习的时候也看过AtomicInteger类很多次了,一直没有去做相关的笔记。现在遇到问题了,于是就过来写写笔记,并希望在学习的过程中解决掉问题。 我们可以发现问题所在:count++并不是原子操作。因为count++需要经过读取-修改-写入三个步骤。举个例子: 所以到这…
给女朋友讲解什么是Optional【JDK 8特性】
前两天带女朋友去图书馆了,随手就给她来了一本《与孩子一起学编程》的书,于是今天就给女朋友讲解一下什么是Optional类。 至于她能不能看懂,那肯定是看不懂的。(学到变量/for循环的女人怎么能看懂呢) 不知道大家还记得上一篇《阿里巴巴 Java开发手册》读后感不,当时阅读到空…
《阿里巴巴 Java开发手册》读后感
前一阵子一直在学Redis,结果在黄金段位被虐了,暂时升不了段位了,每天都拿不到首胜(好烦)。 趁着学校校运会,合理地给自己放了一个小长假,然后就回家了。回到家才发现当时618买了一堆书,这堆书还有没撕包装的呢....于是我翻出了最薄的一本《阿里巴巴 Java开发手册》 这本书…
从零单排学Redis【白银】
今天继续来学习Redis,上一篇从零单排学Redis【青铜】已经将Redis常用的数据结构过了一遍了。如果还没看的同学可以先去看一遍再回来~ 同样地,Redis服务器中也有数据库这么一个概念。如果不指定具体的数量,默认会有16个数据库。 这说明,数据库与数据库之间的数据是隔离的…
CopyOnWriteArrayList你都不知道,怎么拿offer?
可能大家对这个技术比较陌生吧,但这项技术是挺多应用场景的。除了上文所说的Linux、文件系统外,其实在Java也有其身影。 大家对线程安全容器可能最熟悉的就是ConcurrentHashMap了,因为这个容器经常会在面试的时候考查。 面试官:”ok,ok,ok,今天的面试时间也…
2018年如何快速学Java
提前预警:本文适合Java新手阅读(老手可在评论区给下建议),希望大家看完能有所收获。 同学:能不能给他一个网页他改一下,他想参考一下,然后用于做毕业设计。 随后这个同学发了一个小视频过来,说自己在学Java。我看了一下:大概是在练习&^|这些操作符。 最后,我告诉这同学:"你…
COW奶牛!Copy On Write机制了解一下
触及到知识的盲区了,于是就去搜了一下copy-on-write写时复制这个技术究竟是怎么样的。发现涉及的东西蛮多的,也挺难读懂的。于是就写下这篇笔记来记录一下我学习copy-on-write的过程。 本文力求简单讲清copy-on-write这个知识点,希望大家看完能有所收获。…
【3y】从零单排学Redis【青铜】
最近在学Redis,我相信只要是接触过Java开发的都会听过Redis这么一个技术。面试也是非常高频的一个知识点,之前一直都是处于了解阶段。秋招过后这段时间是没有什么压力的,所以打算系统学学Redis,这也算是我从零学习Redis的笔记吧。 本文力求讲清每个知识点,希望大家看完…