自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 Android D8 编译器 和 R8 工具

语法特性脱糖的过程可谓丰富多彩,当然他们的最终目的是一致的:使新的语法可以在所有的设备上运行。即在编译阶段将在语法层面一些底层字节码不支持的特性转换为基础的字节码结构,(比如。语言功能及利用这些功能的第三方库提供内置支持。编译器的输出执行字节码转换(称为。上的泛型脱糖后在字节码层面实际为。字节码的开发工具,因为它会使用。的替代工具,用于代码的压缩(都合并到一步进行执行。开始提出来,但是实际上。),从而实现新语言功能。中一个重大变更是引入。

2025-02-28 20:18:10 993

原创 Nmap使用教程图文教程(超详细)

点开kali的左上角,输入 wireshark 单击打开,选择抓包的网卡(我这里是 eth0 )。输入过滤条件后,点击箭头应用。这个过滤条件的意思是:过滤IP地址是 192.168.31.180 并且 端口是 TCP的80端口。设置完过滤条件后,我们在命令行执行扫描命令,然后查看「wireshark」中的请求包。

2025-02-06 06:04:40 884

原创 NIO源码分析:SelectionKey

当通道实际发生的操作事件类型不等于该通道对应的SelectionKey的关注键interestOps时, 预备键readyOps不会被修改,且该发生事件的通道对应的SelectionKey也不会被加入Selector的selectedKeys集合中(从下面代码中可看出),但readyOps不一定就等于interestOps,因为调用interestOps的修改或设置方法时并不会同时修改readyOps。在之前说过 var1 & var2!

2025-02-06 06:02:56 444

原创 Linux 的7种文件类型及各颜色代表含义_linux中不同颜色文件的含义

3)x 表明该文件具有可执行权限,若该位置为 “-” ,则表明文件不具有可执行权限;

2025-02-06 01:41:57 1497

原创 Linux 环境安装 Elasticsearch 8

安装步骤参照运行完上面命令,不出意外就能安装成功,。使用这种方式安装时,安装进程会自动创建,因此可以直接使用systemctl对 elasticsearch 进程作systemd不出意外的话,会成功。但是我出意外了,启动失败(忘记截图了),它告诉我可以用命令查看错误原因:看到oom-kill就明白了,我的小服务器内存不够它玩。它默认的堆内存大小是4G,而我的服务器内存总共才4G,所以我需要降低堆内存配置。这里需要说明的是,正常情况下 elastsearch的安装包下有个config。

2025-02-06 01:40:13 1870

原创 java集合之ArrayList源码解析(java8)

说明:确保set的位置小于当前数组的长度(size)并且大于0,获取指定位置(index)元素,然后放到oldValue存放,将需要设置的元素放到指定的位置(index)上,然后将原来位置上的元素oldValue返回给用户。Vector是线程安全的,但是性能不及ArrayList,它们俩的底层实现都是数组。接口中全都是抽象的方法,而抽象类中可以有抽象方法,还可以有具体的实现方法,正是利用了这一点,让AbstractList是实现接口中一些通用的方法,而具体的类还可以添加自己独特的方法。

2025-02-05 21:13:17 869

原创 Java集合_java结合

如果hash值相同,进而需要调用元素a所在类的equals()方法,equals()返回true,元素a添加失败;我们想HashSet中添加元素a,首先调用元素a所在类的hashCode()方法,计算元素a的哈希值,此哈希值接着通过某种算法计算出HashSet底层数组中的存放位置(即为索引位置),判断数组此位置上是否有其他元素。保证添加的元素按照equals()判断是,不能反悔true也就是说相同的元素只能添加一个(相同数据哈希值相同)获取数组中实际元素的个数的需求,数组没有线程的属性或方法可用。

2025-02-05 21:11:33 533

原创 Github标星25K+超火的Android实战项目,Android篇_github android 和后台项目

最后为了帮助大家深刻理解Android相关知识点的原理以及面试相关知识,这里放上相关的我搜集整理的24套腾讯、字节跳动、阿里、百度2019-2021面试真题解析,我把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包知识脉络 + 诸多细节。还有高级架构技术进阶脑图、Android开发面试专题资料帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

2025-02-04 17:50:53 918

原创 GitHub优质开源项目-SpringBoot项目

JeecgBoot 提供了一系列低代码模块,实现在线开发真正的零代码:Online表单开发、Online报表、报表配置能力、在线图表设计、大屏设计、移动配置能力、表单设计器、在线设计流程、流程自动化配置、插件能力(可插拔)等等!产品竞争对手《有赞》、《微盟》。后台管理系统包含商品管理、订单管理、运费模板、规格管理、会员管理、运营管理、内容管理、统计报表、权限管理、设置等模块。一个支付案例,提供了包括支付宝、微信、银联在内的详细支付代码案例,对于有支付需求的小伙伴来说,这个项目再合适不过了。

2025-02-04 17:49:06 1824

原创 android的adb介绍

android.bat –h 或 android.bat –help以上,用不同的设置创建avd.(3) 直接用”android.bat”命令可以启动Android SDK图开界面(如下图),用它也可以创建avd;(4) 在eclipse中,点击工具栏中的“open the avd and SDK manager”图标来打开上图。

2025-02-04 07:41:54 714

原创 android用eclipse开发碰到65535问题的完美解决方案

在sdk的这个路径(adt-bundle-windows-x86_64-20140702\sdk\extras\android\support\multidex\library\libs)下找到android-support-multidex.jar这个文件。我们做完上面的这些工作以后我们打开命令行工具,切换到我们的工程根目录下 cd /d 工程路径,然后输入 gradle build --info,这时就观察控制台的打印日志就行了,如果编译成功会有提示 build success。

2025-02-04 07:39:57 980

原创 Android 一个改善的okHttp封装库

);

2025-02-03 19:32:16 747

原创 SpringBoot 自动配置原理以及启动流程

ConditionalOnMissingBean :仅仅在当前上下文中不存在某个对象时,才会实例化一个Bean,该注解表示,如果存在它修饰的类的bean,则不需要再创建这个bean,可以给该注解传入参数例如。@ConditionalOnClass : 某个class位于类路径上,才会实例化一个Bean),该注解的参数对应的类必须存在,否则不解析该注解修饰的配置类。@ConditionalOnMissingClass :某个class类路径上不存在的时候,才会实例化一个Bean。

2025-02-03 11:39:41 606

原创 SpringBoot 的@Value注解真是太强了,谁用谁说爽!

但是这样有个问题,当不配置该 key 值,默认值会为空串,它的 length = 1(不同于数组,length = 0),这样解析出来 list 的元素个数就不是空了。解析 Map 的写法如下所示,value 为该 map 的 JSON 格式,注意这里使用的引号:整个 JSON 串使用引号包裹,value 值使用引号包裹。说实话,业务代码写多了,这个“古老”的数据结构远远没有 list 用的多,但是它在解决上面这个问题上,出乎异常的好用。使用逗号分割,一行配置,即可完成多个数值的注入,配置文件更加精简。

2025-02-03 11:37:57 800

原创 Mongo数据库慢查询功能_mongo慢查询设置集合大小

开启Mongo数据库的慢查询功能 在这里需要注意,Mongo数据库的慢查询数据是存放在一个数据库集合中(system.profile),这个和Mysql数据库是有区别的,如果你不主动创建system.profile这个集合,那这个集合就固定1M大小,当慢查询记录超过1M,就会将历史数据覆盖,循环使用,所以在这里需要根据业务实际情况设置集合大小。这里设置的Profiling级别为1,慢查询阈值为500毫秒。可以看到返回结果是0,Mongo数据库没有开启慢查询功能。这里为了方便测试,将慢查询的级别设置为2。

2025-02-02 03:52:13 194

原创 Docker搭建Mysql主从复制_dockermysql> change master to master_host=‘172

mysqld]

2025-01-31 12:33:02 885

原创 docker快速入门_docker 容器写代码

dockerfile概念:Dockerfile 是一个文本文件1、包含了一条条的指令2、每一条指令构建一层,基于基础镜像,最终构建出一个新的镜像3、对于开发人员:可以为开发团队提供一个完全一致的开发环境4、对于测试人员:可以直接拿开发时所构建的镜像或者通过Dockerfile文件构建一个新的镜像开始工作了5、对于运维人员:在部署时,可以实现应用的无缝移植我们可以在docker官网搜到一些dockerFile.关键字作用备注FROM指定父镜像。

2025-01-31 12:31:20 624

原创 Android 自定义多状态提示输入布局 ColorTextInputLayout

xml布局文件View通用的子View仍然需要在每个使用该ViewGroup的xml布局文件中配置,过于繁琐在xml布局文件中配置在ViewGroup下的子View都会被 add到ViewGroup下,无法进一步分配ViewGroupaddView()结论由于前述的需求,我需要1个通用的TextView来作为提示文本,同时又需要一个ViewGroup来存放从xml布局文件中加载进来的子View,这2个正对应方案2的2个问题,方案3正好能满足需求。项目实施====

2025-01-24 16:56:42 839

原创 2024-12-19【Java程序设计教程】【第三章习题】

(4)当Java程序运行时,系统根据调用该方法的对象,来决定实际调用的是子类还是父类的方法。对于子类的一个对象,如果该子类重写了父类的方法,则运行时系统调用子类的方法;,否则在其子类中只是新定义了一个方法,并没有对其进行覆盖,因为修饰符为private的方法,子类不能从父类继承,所以覆盖也不存在了。2.类的实例化的结果就是对象,而对对象的抽象就是类,类描述了一组有相同特性(属性)和相同行为的对象。子类拥有父类对象中的所有属性和方法(包括私有属性和方法,但这些子类是无法访问的,只是拥有);

2025-01-24 02:07:21 244

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除