刘望舒 刘望舒
3年前
Android包管理机制(一)PackageInstaller的初始化
Android框架层Android包管理机制Android框架层本文首发于微信公众号「刘望舒」前言包管理机制是Android中的重要机制,是应用开发和系统开发需要掌握的知识点之一。包指的是Apk、jar和so文件等等,它们被加载到Android内存中,由一个包转变成可执行的代码,这就需要一个机制来进行包的加载、解析、管理等操作,这就是包管理机制。包管理
Easter79 Easter79
3年前
spring源码解析bean初始化与依赖注入二
前言本文转自“天河聊技术”微信公众号本次接着上次的介绍来解析bean初始化和依赖注入正文上一次跟踪到这个方法org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactorydoCreateBeanprotectedObjectdoCreate
Souleigh ✨ Souleigh ✨
4年前
Js中 constructor, prototype, __proto__ 详解
本文为了解决以下问题:__proto__(实际原型)和prototype(原型属性)不一样!!!constructor属性(原型对象中包含这个属性,实例当中也同样会继承这个属性)prototype属性(constructor.prototype原型对象)__proto__属性(实例指向原型对象的指针)<br/首先弄清楚几个概念:<br/
Wesley13 Wesley13
3年前
Java 中初始化 List 集合的 6 种方式!
!(https://oscimg.oschina.net/oscnet/26618d87ed404f14b29016a3e22e57fe.png)List是Java开发中经常会使用的集合,你们知道有哪些方式可以初始化一个List吗?这其中不缺乏一些坑,今天栈长我给大家一一普及一下。1、常规方式Lis
Wesley13 Wesley13
3年前
Java 中初始化 List 集合的 6 种方式!
!(https://oscimg.oschina.net/oscnet/0db5449d0736e22cb92ba0cf9daad91990a.jpg)  List是Java开发中经常会使用的集合,你们知道有哪些方式可以初始化一个List吗?这其中不缺乏一些坑,今天栈长我给大家一一普及一下。  1、常规方式  ListString
Wesley13 Wesley13
3年前
Java递归遍历文件夹
在扫描过程中发现一个问题,会出现类似(E:\\\\SystemVolumeInformation)这种路径。这种路径会报空指针,我在系统设置里面设置了显示隐藏文件,也看不到这个东西。有知道具体原因的大佬,请为小弟指点迷津。packageorg.aijiao.test;importjava.io.File;publicclassTest
Wesley13 Wesley13
3年前
STM32 HAL库 API函数(一) GPIO
首先是XXX\_hal\_gpio.h中可用的PAIGPIO初始化函数voidHAL_GPIO_Init(GPIO_TypeDefGPIOx,GPIO_InitTypeDefGPIO_Init);voidHAL_GPIO_DeInit(GPIO_TypeDefGPIOx,uint32_tGPIO_Pi
Wesley13 Wesley13
3年前
C++面试
C/C基础dynamic\_cast和static\_cast区别,为什么dynamic\_cast能做到类型检查new和malloc区别,new实际上执行了什么操作,可能在什么步骤出现异常虚继承的细节,纯虚函数智能指针的作用和实现,auto\_ptr和share\_ptr区别,循环引用,weak
Stella981 Stella981
3年前
C++四种cast操作符
  C风格(Cstyle)强制转型如下:  (T)expression 或  T(expression)//函数风格(Functionstyle)  两种形式之间没有本质上的不同。  对于具有转换的简单类型而言C风格转型工作得很好。然而,这样的转换符也能不分皂白地应用于类(class)和类的指针。ANSIC标准定义
Wesley13 Wesley13
3年前
Java8之后的业务取值避免空指针的一种解法
写业务代码的时候,通常会遇到数据库POJO对象转换为前端需要的VO对象,这时经常会遇到烦人的空指针问题,Java8之前,我们可能这么写:1.对于对象field复制风格:a.setCreateTime(b.getCreateTime().getTime());a.setAmount(b.getPayed()b.getVouch