chic 发布于 02月16, 2020

Java - 多态

多态:成员属性:覆盖只发生在函数上,和成员变量没关系。所以使用父类指针指向子类对象时,直接通过打点调用的方式,获取成员属性的值,获取的是父类的成员属性的值,而不是子类的。成员方法:通过父类的指针调用子类重写的方法,会优先调用子类重写的方法。子类中找不到时,会沿着继承链往上找,找到父类中的方法。...

阅读全文 »

chic 发布于 02月15, 2020

Java - 接口和抽象类

接口和抽象类方法的定义关键词:abstracti:抽象关键词,接口中默认修饰关键词,可不写。default:默认方法,在接口类中可添加方法体,Java8,解决接口升级的问题。static:静态方法,通过接口类名直接调用,需要添加方法体。private:定义私有方法(静态私有方法),需要添加方法体。可以解决接口中共有方法的问题,而不用暴露给外部(Java9特性)。常量的定义:默认的关键词:publi...

阅读全文 »

chic 发布于 11月15, 2019

iOS 13 适配

iOS 13 适配:主要适配:1. UISearchDisplayController 处理。2. UITabBar 设置文字颜色失效。3. 禁止暗黑模式。4. 获取 Wifi SSID 失败。UISearchDisplayController 处理:UISearchDisplayController 在iOS8 之后就被苹果标记为过期,使用 UISearchController 代替。UISea...

阅读全文 »

chic 发布于 11月15, 2019

pip 指定包安装路径

背景: 由于在Xcode 11+ 以上版本集成了 Python3,使用pip 安装依赖包,导致使用Python3 执行脚本时,加载不到依赖包,故需要在使用 pip 安装依赖包时指定包的安装路径,使用以下命令:命令: sudo pip install --target=path packageName...

阅读全文 »

chic 发布于 05月20, 2019

iOS-事件传递及响应者链

事件的产生和传递过程:当触摸事件发生时,压力转换为电信号,iOS 系统将会产生 UIEvent 事件,记录事件产生的时间和类型,然后系统将事件加入到一个由 UIApplication 管理的事件队列中。UIApplication 会从事件队列中取出最前面的事件,并把事件分发下去以便处理,通常会先发送事件给应用程序的主窗口(keywindow)。主窗口会在视图层次结构中找到一个最合适的视图来处理触摸...

阅读全文 »

chic 发布于 05月14, 2019

iOS 中与 WebView 交互

在 iOS 中 webView 分为 UIWebView 和 WKWebView 两种。其中 WKWebView 是在 iOS8.0 版本新增,而 UIWebView 是 iOS2.0 开始就存在了。UIWebView 存在占用过多内存且不容易控制释放、加载速度等问题。WKWebView 相较于 UIWebView 优势在于能够直接使用系统 Safari 渲染引擎去渲染页面,支持更多 HTML5 ...

阅读全文 »

chic 发布于 05月05, 2019

iOS-客户端本地文件加解密

概述:1. 客户端文件加解密,在 iOS 客户端的实现,其它端可参考实现逻辑。2. 从后台下载文件,下载成功后,把文件加密,缓存在本地。3. 预览文件之前需要将文件解密,生成临时预览文件,预览完毕后,删除临时文件。实现思路:使用 CCCrypt 来实现加解密。注意点:1. 需要把OC 字符串类型的秘钥,使用 UTF-8 编码,转成 char 类型的数组,这里声明 char 类型数组时,要注意多申请...

阅读全文 »

chic 发布于 04月22, 2019

Debug 的使用

什么是 Debug:Debug 是 DOS、Windows 都提供的实模式(8086 方式)程序的调试工具。使用它,可以查看 CPU 各种寄存器中的内容、内存的情况和在机器码级跟踪程序的运行。Debug 常用的功能:R 命令:查看、改变 CPU 寄存器的内容。使用 R 命令查看,直接键入 R 就可以。使用 R 命令来改变寄存器中的内容。比如要修改AX寄存器中的值,可用R命令后加寄存器名来进行输入r...

阅读全文 »