- 博客(6)
- 收藏
- 关注
原创 Android Stuido写c++代码(JNI/NDK)
Android 采用最新的CMake来编译c/c++代码。配置步骤如下之后我们新建一个java类我们在main目录下新建jni目录创建c文件 名字随意之后创建CMakeList.txt(名字只能是这个)配置如下然后点击File把CMakeLists.txt加载进项目然后等待编译完成,点击锤子图标会发现在图上目录下生成了so文件之后我们发现现在可以在创建的Java类JNI下边方...
2019-04-19 11:58:57
235
原创 手写一个精简版ButterKnife
以上是java.lang.annotation包下的元注解的分类@Documented源码中的解释大概意思是是否记录在javaDoc中@Inherited源码中大概意思是是否继承该注解类型@Target注解的作用范围 默认是false@Retention注解是否会保留@Target中的注解1.ElementType.CONSTRUCTOR:用于描述构造器2.ElementType...
2019-04-12 23:30:55
230
原创 kotlin入门二
kotlin的具名参数首先我们还是写一个add的方法这时候我们定义一个变量mInt =10 然后赋给方法中的第一个参数调用的时候就用到了具名参数b=递归kotlin中面向对象继承多态...
2019-04-06 12:26:11
192
原创 kotlin入门一
在学习kotlin就做一个记录首先我们在android studio 上面查看是否安装了kotlin的插件然后点击好吧kotlin就准备就绪了kotlin的数据类型和java类似 区别在于kotlin上边没有包装类(装箱类的区分)我们看下kotlin函数的写法fun main(args: Array):Unit {}fun是修饰符 main是函数名 args是参数名 Array...
2019-04-05 16:53:14
367
原创 一步步实现组件化
首先我们可以定义一个全局的.gradle文件,方便整个项目版本的控制然后在项目的build.gradle中引用即可apply from:"(你新建的gradle名称).gradle"在APP的build.gradle中的引用如下新建两个module然后在src目录下新建isModule的包用于放置作为App存在的AndroidManifest.xml文件然后我们分别在module的...
2019-04-02 11:06:36
314
原创 双重校验单例为什么需要volatile
在并发编程中 我们经常会遇到三个问题,原子性,可见性 和有序性原子性是指多个操作,要么全部执行,要么全部不执行。有点类似于数据库中的事务。可见性是指其他线程可以看见某个线程对同一个变量操作后的值。有序性是指程序的运行具有有序性。例如代码的执行从上往下 创建对象一般分为三步1.分配内存空间。2.初始化对象3.将该内存空间的地址赋值给该对象static volatile EventBu...
2019-03-27 19:31:51
478
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅