- 博客(80)
- 收藏
- 关注
原创 Clion中怎么切换不同的程序运行
那么我想切换不同的项目运行怎么办呢?如下图,选中项目的CMakeLists.txt,右键再点击Load CMake Project即可。结果,如下图,已经切换到C_project了。
2024-07-10 21:31:33
479
原创 Linux驱动怎么查找头文件
写linux驱动的时候,总会包含很多头文件,那么是怎么知道需要包含哪些头文件呢?要知道如果使用man,是查找不到的。
2022-10-21 11:45:51
304
原创 从零手写“仿Linux“操作系统
手写一个类似linux的操作系统。主要实现了内存管理、线程、进程、文件系统、shell、进程间通信,是用来学习linux操作系统的不错选择,自从我做完这么一个系统再去看《linux内核设计的艺术》感觉没那么吃力
2022-10-17 10:27:45
1922
原创 电脑ping不通Ubuntu
我启动192.168.26.128这台虚拟机的时候,电脑是可以通过终端连接到虚拟机的;当我关了这台之后,想连接到192.168.83.129这台却失败了。虚拟机的网络适配器模式仍然是NAT模式。打开网络和共享中心-->更改适配器设置-->VMnet8-->修改IPV4的网段和你要启动的虚拟机一致即可。我电脑上装了两个虚拟机,它们的ip地址的网段是不一样的。
2022-09-24 22:28:07
1507
原创 Vscode markdown 添加、粘贴、导入图片
网上查了很多资料,很多都说建个assets文件夹,放入图片,可是我复制了图片死活粘贴不进Vscode,可以这样做:首先我这里面是没有图片的,如果你在Vscode里面粘贴图片是粘贴不了的:打开这个docs文件夹,将图片拷贝进去:再看Vscode中的文件夹,可以看到拷贝进来的图片:markdown中使用:...
2022-05-28 23:44:13
9754
2
原创 JAVA中是值传递还是引用传递?
Java 到底是值传递还是引用传递? - 知乎 https://www.zhihu.com/question/31203609Java引用和C++引用的区别 - Gavin.Lin - 博客园 https://www.cnblogs.com/csuer/p/4620845.html
2021-12-20 17:14:18
1179
原创 静态内部类不持有外部类的引用
1、新建一个类A2、MainActivity中分别进行三种测试:直接新建个对象、新建个静态匿名对象、定义个静态类再新建个对象3、查看字节码总结:可见如果想让类的对象不持有外部类的引用,有两个方法:1 新建个static内部类继承原来的类,再创建这个静态类的实例,如测试三; 2 直接新建个实例,但是在前面加static关键字如测试二。这个在解决handler的内存泄漏会用得上...
2021-12-20 13:31:56
927
原创 接口和抽象类的匿名实现类
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Handler handler = new Handler(.
2021-12-05 21:04:04
190
原创 抽象类实现某个接口
/** * created by wlx on 2021/11/26 */public interface Itest { public void eat(); public void play();}一、情景一抽象类没有实现接口的方法public abstract class Test implements Itest{}子类需实现接口的全部方法,否则报错public class Testapp extends Test{ @Overri...
2021-11-26 10:23:48
2804
原创 执行gradle命令报错:* Where: Settings file ‘xxx\settings.gradle‘ line: 1
降低Gradle的版本,我之前采用7.0以上的,现在改为如下:可能还会报一个错:Cannot resolve external dependency com.google.android.material:material:1.3.0 because no repositorie在整个project的build.gradle添加如下:...
2021-11-20 21:09:39
4057
原创 Gradle download:kotlin-compiler-embeddable下载慢
1、进入Maven仓库地址2、进行下面的操作3、先让AndroidStudio下载一会,然后取消,这样它在磁盘中会生成一个文件夹,4、结果应该是这样的5、再重新打开AndroidStudio同步一下即可...
2021-10-28 17:05:11
5843
2
原创 Looper.java中的一些思考
public class Test { public static void main(String[] args) { Looper.prepare(); Looper ceo=Looper.getCeo(); System.out.println("主线程"+ceo); System.out.println("主线程"+ceo.threadlocal); new Thread(new Runnable() { .
2021-09-30 20:03:24
848
原创 2021-09-23 道阻且长,行则将至
2021年之前的我还是处于迷茫的时期,有时候不是不努力,只是真的不知道该往哪个方向去走,如今在学着别人四年前的东西,有一种说不出的感觉,想想如果当时在学校能够知道自己以后想做什么,大学好好学技术,也许我会过得更充实,更快乐些,想想出来工作那么久了,现在一事无成,一无所有,应该没人比我惨的了吧。 但这些都已经过去了,我只能接受现实,现在唯一能做的就是收拾下悲惨的过往,重新出发,有了方向,剩下的只有坚持。纵然现在很累,但还不是歇息的时候,纵然前面道险山高,吾亦...
2021-09-23 20:26:13
160
原创 安卓AOP,使用AspectJ报错
Caused by: org.gradle.tooling.BuildException: Unable to read jar file E:\android_project\sysytem_framework\Permission_AOP\app\build\intermediates\transforms\ajx\debug\29.jar原因:Around的方法不能是private的,改成public即可
2021-09-20 22:38:09
395
原创 Fragment的一些总结
一、Fragment的创建二、Fragment的删除三、Fragment的替换四、Fragment的和Activity的通信五、Fragment和Fragment的通信六、超级易错点
2021-09-14 00:41:46
336
原创 自定义View: 九宫格图形解锁(Kotlin版)
效果:代码:package com.example.kotlin_testimport android.content.Contextimport android.graphics.Canvasimport android.graphics.Colorimport android.graphics.Paintimport android.util.AttributeSetimport android.view.MotionEventimport android.view..
2021-09-08 11:10:47
405
原创 Java反射的使用
定义:加载完类之后,在堆内存的方法区中就产生一个Class类型的对象(注意和关键字class的区别,class是我们平时定义类用的,Class可以说是表示类的类),一个类只有一个Class对象,这个对象就包含有类的结构信息,我们就可以通过这个对象获得类的结构信息。这个对象就像一面镜子,我们可以通过这个镜子看到类的结构,所以,我们形象的称之为:反射 作用:反射在调用类的私有方法、私有属性,获取注解方面的用处很大 举例:import java.lang....
2021-07-26 15:59:27
201
原创 静态代码块、非静态代码块和构造函数的执行顺序
例子1:public class test1 { public static void main(String[] args) throws ClassNotFoundException { } public test1() { System.out.println("test1构造函数"); } static { System.out.println("test1静态代码块"); } {
2021-07-26 10:43:08
488
原创 面向对象六大原则
1、单一职责原则 缩写:SRP(Single Respinsibility Principle) 定义:就一个类而言,应该只有一个引起它变化的原因 简而言之,完全不同的功能不应该放在一个类中实现,一个类中应该是相关性很高的函数(或者数据)的封装 举例: 一个图片加载类,里面既有内存缓存(注意和sd卡存取是有区别的)的存取,也有图片的下载,显示功能。根据单一职责原则,可以另外定义一个类实现缓存的存取,而不是放在...
2021-07-25 16:04:08
159
1
原创 回调的原理
什么是回调?先举个例子再总结,不然说得挺抽象的首先要知道C++里面是多继承的,这样就会形成多对多的关系,十分复杂。所以Java里面只支持单继承,一个类只能继承一个父类。但是这样有个缺点,如果子类想实现其它类的方法,那怎么办?所以接口就登场了,子类可以实现多个接口确保实现各种想要的方法。 接口,也就是interface可以理解成角色,先具体的例子理解回调的原理:package com.example.javaproject;/** * 第一步...
2021-07-25 02:06:39
677
原创 Android Studio运行java程序的方法
1、File-->new-->new module-->Java Library2、配置信息,finish3、得到4、点击Edit Configurations5、点击Application ,选择+号,选择Application6、接着配置,配置好后点击apply7、测试8、结果9、配置模块下的build.gradle10、运行OK...
2021-07-24 15:48:36
4541
1
原创 final static private的区别
1、final关键字举例1:举例2:举例3:2、static和final的区别3、final和private的区别
2021-07-24 12:25:19
495
原创 LruCache、HashMap和LinkedHashMap的使用
学习链接,看完基本能搞定HashMap源码、LinkedHasMap源码和LruCache的原理:彻底解析Android缓存机制——LruCacheHashMap全B站最细致源码分析课程LinkedHashMap讲解及如果运用在LruCache1、LinkedHashMap继承自HashMap。HashMap取出来是无序的;有序的话用LinkedHashMap,而且LinkedHashMap可以遵循LRU算法,能把最近不常使用的元素删除,可按活跃度排序,如:HashMap:.
2021-07-24 11:58:22
322
2
原创 安卓进阶八:Activity的启动过程
目录一、Activity的分类二、Activity的启动方式三、根Activity的启动过程四、子Activity的在根Activity相同进程中的启动过程五、子Activity在新进程中的启动过程一、Activity分类 Activity可分为根Activity和子Activity两种 根Activity是以快捷图标显示在Launcher中,它的启动过程就代表了一个应用程序的启动过程 子Activity由根Activity或...
2021-07-15 00:40:50
345
原创 安卓进阶七:图解binder(4)-Client获取Server接口
这是学习罗升阳《安卓系统源代码情景分析》的笔记和总结 图1 是Client获取Server接口的详细代码 图2是代码的架构,流程,方便整体把握图1图2
2021-07-12 15:28:21
201
原创 安卓进阶七:图解binder(3)-Server启动及被ServiceManager唤醒之后
这是学习罗升阳《安卓系统源代码情景分析》的笔记和总结。 图1 Server启动过程及被ServiceManager唤醒后详细代码 图2 代码的架构和流程的总结,方便整体把握图1图2...
2021-07-11 22:36:27
162
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人