- 博客(44)
- 收藏
- 关注
原创 Android系统架构
任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。* 丰富而又可扩展的视图(Views),可以用来构建应用程序, 它包括列表(lists),网格(grids),文本框(text boxes),按钮(buttons), 甚至可嵌入的web浏览器。所有的应用程序都是使用JAVA语言编写的。* 系统 C 库 - 一个从 BSD 继承来的标准 C 系统函数库( libc ), 它是专门为基于 embedded linux 的设备定制的。
2025-01-16 15:38:47
341
原创 Android系统对话框——自定义关闭
*** 自定义Dialog*/setTitle("自定义Dialog");setPositiveButton("确定", null);setNegativeButton("取消", null);// 自定义Positive按钮 实现点击以后不自定隐藏Dialog/*** 在我们重新自定义PositiveButton的点击事件的时候,一定要保证之前添加了 PositiveButton。
2025-01-16 15:37:25
170
原创 Android开发指南!Android开发岗还不会这些问题,这原因我服了_android开发指南看不懂
很多公司在招人这件事情上都会面临一个问题;“我们的招聘要求又不高,能做项目就行,但为什么就是招不到人?很多公司还面临一个问题,招聘的时候这人各方面都不错,但上岗了就是不出活,绩效平平。要解决上面的这两个问题,需要一个衡量人能力的标准,这个标准不仅适用于招聘,同样也适用于考核、职等评定等,我叫这种标准为技能树。这里所说的技能树,不仅包含技术能力,还包括工作能力。我始终认为一个人的工作能力并不同等于他的技术能力,工作能力除技术本身外,还包括这个人的综合素质(合作交流、工作态度、自我实现欲望等)。
2025-01-16 14:37:10
235
原创 Android开发技巧!如何才能通过一线互联网公司面试?知乎上已获万赞_互联网面试问题 知乎
不知道大家面试的时候,有没有遇到这种情况,面试工资谈的是10K,最后干着40K的活!说着冠冕堂皇,提升大家能力的话,做着死命压榨员工,996成了程序员心里的魔咒!初级安卓开发工程师(10K-15K)掌握扎实的java基础,了解各种设计模式,熟练掌握Android UI控件、Android Java层API的相关使用。往中级层次发展时,继续深入学习java编程技术,掌握更多Android开发需要的库,还要精通ml、json解析,会做socket c/s端的程序。中级安卓开发工程师(15K-30K)
2025-01-16 14:35:49
830
原创 Android一次面试失败的复盘和自我反思_安卓自我反思
离职到现在已经有两个月了,由于行情确实不大行,面试机会非常少。这阵子我的心情都是处于一个很down的状态,个人的性格变得有些烦躁易怒,甚至发展到线下笔试都有不耐烦没有写完题的情况。这次的面试算是一个教训,告诉我必须要调整好自己的心态,至少在应对面试这件事上,一定要抱以敬畏和学习的态度去面对,而不是心浮气躁自以为是。其次是关于面试八股文的问题,八股文里面很多手写题,有些功能我用api很快实现就不管了,实际上自己也不确定如果不使用这些api自己会不会写。然后还有对笔试的抵触问题,这个也是我要去改变的一个点。
2025-01-16 12:59:07
652
原创 Android—用最简单的案例Demo带你分析解读:Android观察者模式
/@Override@Override/***//**/***/System.out.println(“魅族手机需要去更新QQ了哦…”);/***/System.out.println(“小米手机更新QQ了…”);/***/System.out.println(“三星手机该更新QQ啦…”);/***/System.out.println(“步步高手机需要去更新手机QQ了哦…”);/***/
2025-01-16 12:57:04
508
原创 10个学习Python的理由,看完你就知道为什么越来越多人学习Python了!_学python的理由
如果你也正打算学习Python语言,希望你可以继续坚持下去,因为学好 Python 不论是就业、副业赚钱、还是提升学习、工作效率,都是非常不错的选择,但要学会 Python 还是要有一个学习规划。我整理了一份Python全套学习资料,包含视频、源码、课件,给那些想学习 Python 的小伙伴们一点帮助!① Python所有方向的学习路线图,清楚各个方向要学什么东西② 100多节Python课程视频,涵盖必备基础、爬虫和数据分析③ 100多个Python实战案例,学习不再是只会理论。
2025-01-16 00:51:45
546
原创 10min快速回顾C++语法(五)字符串专题_用c++ 给定一个只包含小写字母的字符串,请你找到第一个仅出现一次的字符。如
/ 默认初始化,s1是一个空字符串// s2是s1的副本,注意s2只是与s1的值相同,并不指向同一段地址// s3是该字符串字面值的副本// s4的内容是 "cccccccccc"return 0;
2025-01-16 00:49:44
719
原创 #私藏项目实操分享# Java实现基于朴素贝叶斯的情感词分析
按照上面的解释,贝叶斯定理可以表述为:后验概率 = 先验概率 * 似然性 / 归一化常量通俗的来说,可以理解为当我们不能确定某一个事件发生的概率时,可以依靠与该事件本质属性相关的事件发生的概率去推测该事件发生的概率。用数学语言来表达就是,支持某项属性的事件发生得愈多,则该事件发生的的可能性就愈大,这个推理过程也被叫做贝叶斯推理。在查阅的一些文档中,可以被称为,它作为一个调整因子,表示新信息B对事件A带来的调整,作用是将先验概率(主观判断)调整到更接近真实的概率。
2025-01-15 23:35:53
850
原创 #yyds干huo盘点#深入Java泛型
首先来说是什么。泛型的英文是,中文意思是通用的、一类的,结合其应用场景,我理解泛型是一种 通用类型。但我们一般指泛型都是指其实现方式,也就是 将类型参数化 对于 Java 这种强类型语言来说,如果没有泛型的话,处理相同逻辑不同类型的需求会非常麻烦。如果想写一个对 int 型数据的快速排序:j–;i++;可是如果需求变了,现在需要实现 int 和 long 两种数据类型的快排,那么我们需要利用 Java 类方法重载功能,复制以上代码,将参数类型改为 double 粘贴一遍。
2025-01-15 23:33:51
658
原创 # Java基础复习(DayEight):接口与抽象类与接口
接口绝不能有实例字段,也就是不允许存在属性在java8之前接口里面的方法是绝对不能有具体实现的,不过在java8之后,是可以有默认实现的,当然这些接口都不可以去引用实例字段,因为接口不允许存在一般来说,提供属性和方法的具体实现都是交由接口的实现类去提供的接口不是类,所以不能使用new来实例化一个接口不过,虽然不可以使用new来实例化,但却可以声明接口的变量接口变量必须引用实现了这个接口的类对象(多态)接口和实现类可以使用instanceof去判断指定类是否是对应接口的实现类,但不可以判断是否承诺过多,因为接
2025-01-15 23:29:41
761
原创 【AI系列】Python NLTK 库和停用词处理的应用
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨。
2025-01-15 00:24:14
1004
原创 【5G NR】无线承载SRB和DRB_5g drb
SRB表示RRC和NAS消息的传输的无线承载,包含SRB0~SRB3。SRB0用于使用CCCH逻辑信道的RRC消息;SRB1用于RRC消息(其可以包括搭载的NAS消息)以及用于在建立SRB2之前的NAS消息,全部使用DCCH逻辑信道;SRB2用于NAS消息,全部使用DCCH逻辑信道。SRB2的优先级低于SRB1,可以在AS安全激活后由网络配置;SRB3用于当UE处于(NG)EN-DC(EUTRA-NR Dual Connection)或NR-DC时的特定RRC消息,全部使用DCCH逻辑信道。
2025-01-15 00:20:33
668
原创 【2024软件创新实验室暑假集训】SpringBoot框架
Java后端开发web端开发移动端开发注:因为集训还没结束,没有统计所有人的博文,所以以上目录并不完整。理论上20级有Java篇10篇,应用篇7篇;19级各赛道各四篇(每次上课都会有一篇博文作总结)
2025-01-15 00:16:50
878
原创 [JavaScript实例解析]简易TODO List
这部分先获取类名为close的dom元素,同时也是’x’那个元素,获取到元素集合后,做一个循环,给每一个元素的onclick属性绑定函数。最后在最上方的输入框输入事项的内容,然后点击右侧的Add按钮,可以把事项内容增加到下方列表中。这一部分是加载页面之后,在列表每一个事项的最后生成一个’×’的图标,用于提示用户可以点击删除。要注意’\u00D7’是Unicode编码,代表的就是’x’这个符号。点击每一项的最右边有删除事项的“叉叉”,点击可以删除事项。下面四个是一个意思,使元素及子元素的文本不可选中。
2025-01-14 14:44:56
650
原创 [4G&;5G专题-56]:L2 MAC层-逻辑信道到物理信道的映射、MAC层包或PDU格式、MAC层复用与解复用_mac层复用解复用
MAC层支持多个逻辑信道到一个传输信道的映射,因此MAC层PDU包的格式, 又称为传输块TB包格式,可以容纳多个逻辑信道的数据。传递的数据类型包括:(1)终端与基站的L2 MAC层间的控制消息。本层的控制消息。(2)终端与基站在L3 RRC层的控制信令。上层的控制信道。(2)终端与基站核心网之间的数据。上层的数据信道。
2025-01-14 14:41:13
836
原创 [ C++ ] 在C++中,空指针用NULL来初始化还合适吗?_指针初始化为null
不论采取何种定义,在使用空值的指针时,都不可避免的会遇到一些麻烦。比如:下面这段代码的输出结果是什么?
2025-01-14 14:37:31
805
原创 Python入门灵魂5问--Python学习路线,Python教程,Python学哪些,Python怎么学,Python学到什么程度
如下:第一章:python环境搭建 主要包括Python下载安装以及环境变量的配置,在dos中输入python验证第二章:python基础语法 包括打印,字符串,注释等,熟悉IDLE和Pycharm工具的使用第三章:python六种标准类型 数字类型,字符串类型,list,set,tuple,dict等六种类型的使用第四章:python运算符 算术,关系,逻辑,赋值,成员,身份运行符等第五章:python条件语句 if结构,多重if结构,嵌套if结构。
2025-01-13 15:14:10
819
原创 Python入门后迷茫了怎么办?提高编程水平梳理你的编程思路_学python没有思路怎么办
这道题在实际应用场景中使用比较广泛,记得哪里看到说李笑来就利用他的编程技能出版过一本背单词的畅销书,统计历年来四六级、托福考试中出现的高频词汇,学生根据词频来记单词,这种方式深受大家喜欢。这就是一个把编程技能用来解决实际问题的典型场景。所以,哪怕你不是程序员,如果能掌握编程技能的话,也能给你的工作带来极大的便利。另外,在做数据分析时,那些词云效果本质上都是基于词频统计来控制字体的大小,如果你能熟练运用Python中的知识来解决问题的话,那说明你真正入门Python了。当然,实现方法不是唯一的。
2025-01-13 15:10:25
1006
原创 python之ini配置文件(configparser)_python configparser ini
敲黑板:python2的版本是Configparser2.在pycharm里面,新建一个ini文件:右键New->File, 输入框直接写一个.ini后缀文件就行了,然后写数据3.注释里面有中文的话,这里代码跟python2是有点区别的,python2里面直接conf.read(cfgpath)就可以了,python3需要加个参数:encoding=”utf-8”敲黑板:如果ini文件里面写的是数字,读出来默认是字符串。
2025-01-13 15:06:43
452
原创 JAVA中级面试题
spring-boot-starter-web 嵌入tomcat和web开发需要servlet与jsp支持,spring-boot-starter-data-jpa 数据库支持,spring-boot-starter-data-redis redis数据库支持,spring-boot-starter-data-solr solr支持,mybatis-spring-boot-starter 第三方的mybatis集成starter。简单工厂 , 工厂方法 , 单例模式 , 适配器 , 观察者 等模式。
2025-01-12 15:19:10
871
原创 Java中的双重检查锁机制模式(double checked locking)
可以看到,被实例化了两次并且被不同对象持有。完全违背了单例的初衷。加锁==出现这种情况,第一反应就是加锁,如下:这样虽然解决了问题,但是因为用到了,会导致很大的性能开销,并且加锁其实只需要在第一次初始化的时候用到,之后的调用都没必要再进行加锁。双重检查锁=====双重检查锁(double checked locking)是对上述问题的一种优化。先判断对象是否已经被初始化,再决定要不要加锁。
2025-01-12 15:15:29
825
原创 Java中关于内存泄漏分析和解决方案,都在这里了
在这个例子中,我们循环申请Object对象,并将所申请的对象放入一个 Vector 中,如果我们仅仅释放引用本身,那么 Vector 仍然引用该对象,所以这个对象对 GC 来说是不可回收的。GC为了能够正确释放对象,会监控每个对象的运行状况,对他们的申请、引用、被引用、赋值等状况进行监控,Java会使用有向图的方法进行管理内存,实时监控对象是否可以达到,如果不可到达,则就将其回收,这样也可以消除引用循环的问题。就是这种情况导致了内存泄漏。在这个有向图中,根顶点可达的对象都是有效对象,GC将不回收这些对象。
2025-01-12 15:11:49
876
原创 C语言-qsort函数详解
实际上应该传p地址空间中arr1,arr2的地址,这样strcmp()才能找到arr1和arr2对应的字符串,因此得先把e1,e2转化成char**,这样解引用以后才是一个char*的地址。对于这种写法,传进去的是p的地址,strcmp()会将p地址对应的内容转化成字符串,也就是将p中arr1,arr2,arr3的地址转化成字符串。->调试后发现:e2存放的是p的地址(char**类型),e1存放的是p指向的下一个元素的地址(char**类型)比较年龄->实际比较的是整形。
2025-01-11 21:35:13
727
原创 c语言---指针进阶(2)--玩转指针_int arr等价于int arr[]
signal函数的参数有两个,一个是int,一个是函数指针,该函数指针指向的函数的参数是int,返回类型是void。signal函数的返回类型也是一个函数指针,该函数指针指向的函数的参数也是int,返回类型也是void;是signal的参数,分别为int类型的参数和函数指针类型的参数。//代表了第i行首元素的地址,*a是i=0的情况。即去掉 :signal(int, void(*)(int))括号里面:(int, void ( * )(int))signal后面跟了一个括号(),说明它是一个函数。
2025-01-11 21:31:32
407
原创 C语言#pragma使用方法_c pragma
终端输出:看见没,编译的时候输出#pragma message信息,运行的时候根本看不见,你们可以通过预处理命令,看下是否在预处理阶段处理了,gcc -E test.c -o test.i 然后找到test.i文件,双击用gedit打开看见没,预处理根本没处理#pragma message指令,所以#pragma message指令是在编译器处理的。
2025-01-11 21:27:50
257
原创 Airgorah:一款功能强大的WiFi安全审计工具
当前版本的Airgorah支持Debian、RedHat、Arch Linux操作系统,支持x86_64和aarch64架构。此时,你将会看到当前目录下生成了一个工具包,直接使用包管理器进行安装即可。完成之后,我们就可以开始针对不同操作系统创建Airgorah包了。我们还需要下载对应操作系统/架构的工具包,并进行安装。】下载最新版本的预编译Airgorah。广大研究人员可以直接访问该项目的【然后安装构建依赖组件。
2025-01-11 06:20:35
276
原创 AIoT 传感器收集数据到EMQX的规则引擎处理并存储
安装完宝塔后,即可通过外网面板地址进入登录界面,使用“username”“password”登入宝塔面板(若是觉得默认的 “username” 和 “password” 比较难记或者麻烦,也可以在宝塔面板的“面板设置”中进行修改)在EMQ X Dashboard界面左侧“工具”—“WebSocket”填写 “”连接配置“” 的参数,并订阅设备发布的主题 “Device_pubTopic/Temp_Humi”“新建表” 添加以下4个字段,并将表命名为 “Temp_Humi_Data”
2025-01-11 06:16:53
999
原创 AI 知名大模型全览, 顶尖公司的创新作品_各个公司的ai模型
这些模型反映了AI领域的最新发展,它们不仅仅是技术上的突破,也代表了未来可能的应用方向。无论是语言理解、图像处理还是自然对话生成,这些大模型正推动着人工智能的边界不断扩展。对于软件开发技术人员而言,了解这些模型不仅是了解当下,更是把握未来的关键。随着技术的不断进步,我们期待见证更多创新的实践和应用。
2025-01-11 06:13:10
366
原创 2021年国内一线互联网大厂内部题库Android面试(Java篇)
内存中的区域被划分成不同的世代,对象根据其存活的时间被保存在对应世代的区域中。简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以后,JVM 的 GC 就会开始工作,那速度是一定会相当慢的。
2025-01-10 22:44:19
863
原创 2021-12-12【Panasonic Programming Contest 2021(AtCoder Beginner Contest 231)】【题解A-G】
题目大意。
2025-01-10 22:40:38
868
原创 2021-09-17 dynamic addres list(File Edition)
为了保证安全,先让它初始化,然后再把我们保存的信息赋予它。通过 loadContact 自定义函数。void SaveContact(struct contact* ps)// 保存文件。// 读取文件,存放通讯录中。
2025-01-10 22:33:10
150
原创 HTTP消息结构
客户端发送一个HTTP请求到服务器的请求消息包括以下格式:请求行(request line)、请求头部(header)、空行和请求数据四个部分组成,下图给出了请求报文的一般格式。③ 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。get 和 post只是一种传递数据的方式,get也可以把数据传到服务器,他们的本质都是发送请求和接收结果。⑨ GET请求在URL中传送的参数是有长度限制的,而POST没有。
2025-01-09 06:40:45
878
原创 HiveSQL分区的作用及创建分区表案例演示(图解)_hive 动态分区sql
具体来说,HiveSQL分区的作用包括以下几个方面:数据组织和管理:分区可以将数据按照特定的字段值进行组织和管理。通过将数据划分为更小的分区,可以更方便地进行数据的存储、查询和维护。查询性能优化:分区可以根据查询的条件过滤掉不满足条件的分区,从而减少需要扫描的数据量,提高查询的性能和效率。尤其是对于大规模数据集的查询,在使用分区时可以显著减少查询的时间。并行处理能力提升:分区可以将数据划分为更小的单元,从而提供更好的并行处理能力。在查询时,可以同时处理不同的分区,从而提高查询的并发性和整体的查询性能。
2025-01-09 06:35:11
414
原创 Android开发老生新谈:从OkHttp原理看网络请求
用户自定义拦截器是在所有其他拦截器之前,开发者可根据业务需求进行网络拦截器的自定义,例如我们常常自定义Token处理拦截器,日志打印拦截器等。
2024-12-17 19:54:38
917
原创 Android开发的艺术:插件化框架Virtual APK实现原理解析
如果我们启动的是插件APK里的Activity,这个方法的Catch语句块是一定会被执行的,因为入参className已经被替换为插桩Activity的,但是我们只是在宿主App的AndroidManifest.xml中定义了这些Actiivty,并没有真正的实现。如果启动的Activity是插件APK中的,则根据该Actiivty的启动模式选择合适的插桩Activity, AMS在启动阶段对插桩Activity处理后,在创建Activity实例阶段,实际创建插件APK中要启动的Activity。
2024-12-17 19:50:57
627
原创 android开发指南!史上最强vue总结来了,讲的明明白白!_andoid 开发 vue
考虑到文章的篇幅问题,我把这些问题和答案以及我多年面试所遇到的问题和一些面试资料做成了PDF文档,如果有需要的朋友可以免费领取点击这里领取Android面试资料汇总。
2024-12-17 19:47:15
705
原创 Android开发三年了,阿里P5都没面上,我到底败在哪儿
以上就是我的阿里之路三面凉经了,前两面还算比较顺利,到第三面基本上没有回答出来几个。细心的朋友可能已经发现了。阿里三面问的大多是底层的原理。我并没有去追根溯源搞清楚那些方法、工具、框架到底是怎么实现的,他们的工作原理是什么。我个人觉得自己在大学时期的项目经历已经足够丰富了,但都只是把纸面上别人的东西搬运、组装,变成了我自己东西,其实那终究不是我的东西,社会需要的是创新型的人才,并不是一个敲代码的搬运工。要创新,那必然要搞懂原理,你才能够是一个创造者。引用一个知乎高赞回答吧问:程序员应该关注哪些技术?
2024-12-17 19:39:53
997
原创 Android应用开发编译框架流程与IDE及Gradle概要
zipalign对apk文件中数据进行4字节对齐,也就是说编译器把4个字节作为一个单位来进行操作,这样CPU就能对代码进行高效访问,因为对齐后Android系统可以通过调用mmap函数读取文件,也就是说进程可以像读写内存一样操作我们apk中普通文件,所以当对齐的应用在系统中执行时通过共享内存IPC读取资源就能得到较高的性能,如果没有对齐处理则必须显示的调运read等方法去操作数据,也就是说运行过程会比较缓慢且会花费更多的内存,从而导致性能下降。为了解决这种问题可以使用资源类型注解,因为注解提供类型检查。
2024-12-17 19:36:11
671
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人