- 博客(98)
- 资源 (1014)
- 收藏
- 关注
原创 c语言入门基础知识点
C 语言规定,标识符可以是字母(A~Z,a~z)、数字(0~9)、下划线_组成的字符串,并且第一个字符必须是字母或下划线。4、格式化输出语句格式化输出语句,也可以说是占位输出,是将各种类型的数据按照格式化后的类型及指定的位置从计算机上显示。(1)标识符的长度最好不要超过8位,因为在某些版本的C中规定标识符前8位有效,当两个标识符前8位相同时,则被认为是同一个标识符。3、基本数据类型C语言中的数据也是有类型的,C语言中,数据类型可分为:基本数据类型,构造数据类型,指针类型,空类型四大类。
2024-12-06 19:29:15
324
原创 Http https区别
HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。(4)客户端的浏览器根据双方同意的安全等级,建立会话密钥,然后利用网站的公钥将会话密钥加密,并传送给网站。3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。(3)客户端的浏览器与Web服务器开始协商SSL连接的安全等级,也就是信息加密的等级。
2023-11-24 07:12:45
566
原创 Xutils, OKhttp, Volley, Retrofit对比
Volley:Volley是Google官方出的一套小而巧的异步请求库,该框架封装的扩展性很强,支持HttpClient、HttpUrlConnection, 甚至支持OkHttp,而且Volley里面也封装了ImageLoader,所以如果你愿意你甚至不需要使用图片加载框架,不过这块功能没有一些专门的图片加载框架强大,对于简单的需求可以使用,稍复杂点的需求还是需要用到专门的图片加载框架。毫无疑问,Retrofit 默认是基于 OkHttp 而做的封装,这点来说没有可比性,肯定首选 Retrofit。
2023-11-24 07:11:42
597
原创 app优化
(2)用户退出App后, 系统可能由于内存原因将App杀死, 进程和activity都需要重启, 但是可以在onCreate中将被动杀死锁保存的状态(saved instance state)恢复。API设计:App与Server之间的API设计要考虑网络请求的频次, 资源的状态等. 以便App可以以较少的请求来完成业务需求和界面的展示.图片的Size:可以在获取图片时告知服务器需要的图片的宽高, 以便服务器给出合适的图片, 避免浪费.(2)定位中使用GPS, 请记得及时关闭。pp启动优化(针对冷启动)
2023-11-24 07:10:32
533
原创 Android内存泄露及管理
内存泄露 memory leak:是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。在这些资源不使用的时候,记得调用相应的类似close()、destroy()、recycler()、release()等方法释放。解决:将Handler声明为静态内部类,就不会持有外部类SecondActivity的引用,其生命周期就和外部类无关,(1)内存溢出(OOM)和内存泄露(对象无法被回收)的区别。四、非静态匿名内部类引起的内存泄漏。
2023-11-24 07:08:16
491
原创 View,ViewGroup事件分发
5.当某个子View返回true时,会中止Down事件的分发,同时在ViewGroup中记录该子View。由于子View是保存在ViewGroup中的,多层ViewGroup的节点结构时,上级ViewGroup保存的会是真实处理事件的View所在的ViewGroup对象:如ViewGroup0-ViewGroup1-TextView的结构中,TextView返回了true,它将被保存在ViewGroup1中,而ViewGroup1也会返回true,被保存在ViewGroup0中。
2023-11-24 07:07:35
428
原创 View的绘制流程
第二步:OnLayout():确定View位置,进行页面布局。从顶层父View向子View的递归调用view.layout方法的过程,即父View根据上一步measure子View所得到的布局大小和布局参数,将子View放在合适的位置上。第三步:OnDraw():绘制视图。3、完全自定义控件:这个View上所展现的内容全部都是我们自己绘制出来的。这种自定义控件不需要我们自己绘制,而是使用原生控件组合成的新控件。View的绘制流程:OnMeasure()——>OnLayout()——>OnDraw()
2023-11-24 07:06:17
349
原创 四种LaunchMode及其使用场景
一旦该模式的Activity实例已经存在于某个栈中,任何应用再激活该Activity时都会重用该栈中的实例( 会调用实例的 onNewIntent() )。如果在栈中已经有该Activity的实例,就重用该实例(会调用实例的 onNewIntent() )。如果在任务的栈顶正好存在该Activity的实例,就重用该实例( 会调用实例的 onNewIntent() ),否则就会创建新的实例并放入栈顶,即使栈中已经存在该Activity的实例,只要不在栈顶,都会创建新的实例。3. 遍历数据速度不同。
2023-11-24 07:05:39
511
原创 理解Activity,View,Window三者关系
Activity像一个工匠(控制单元),Window像窗户(承载模型),View像窗花(显示视图)LayoutInflater像剪刀,Xml配置像窗花图纸。4:这些View的事件监听,是由WindowManagerService来接受消息,并且回调Activity函数。2:这个PhoneWindow有一个“ViewRoot”,这个“ViewRoot”是一个View或者说ViewGroup,是最初始的根视图。1:Activity构造的时候会初始化一个Window,准确的说是PhoneWindow。
2023-11-24 07:04:39
380
原创 java虚拟机和Dalvik虚拟机的区别
4、一个应用,一个虚拟机实例,一个进程(所有android应用的线程都是对应一个linux线程,都运行在自己的沙盒中,不同的应用在不同的进程中运行。2、Dalvik运行的是自定义的.dex字节码格式。(java类被编译成.class文件后,会通过一个dx工具将所有的.class文件转换成一个.dex文件,然后dalvik虚拟机会从其中读取指令和数据。2、java虚拟机运行的是java字节码。基于栈的机器必须使用指令来载入和操作栈上数据,所需指令更多更多。1、dalvik虚拟机是基于寄存器的。
2023-11-24 07:03:46
543
原创 加密算法
为减少计算量,在传送信息时,常采用传统加密方法与公开密钥加密方法相结合的方式,即信息采用改进的DES对话密钥加密,然后使用RSA密钥加密对话密钥和信息摘要。采用DES与RSA相结合的应用,使它们的优缺点正好互补,即DES加密速度快,适合加密较长的报文,可用其加密明文;RSA加密速度慢,安全性好,应用于DES 密钥的加密,可解决DES 密钥分配的问题。2、DES 的密钥的位数太短,只有56 比特,而且各次迭代中使用的密钥是递推产生的,这种相关必然降低密码体制的安全性,在现有技术下用穷举法寻找密钥已趋于可行。
2023-11-24 07:02:46
463
原创 HttpClient与HttpUrlConnection的区别
首先HttpClient和HttpUrlConnection 这两种方式都支持Https协议,都是以流的形式进行上传或者下载数据,也可以说是以流的形式进行数据的传输,还有ipv6,以及连接池等功能。HttpClient这个拥有非常多的API,所以如果想要进行扩展的话,并且不破坏它的兼容性的话,很难进行扩展,也就是这个原因,Google在Android6.0的时候,直接就弃用了这个HttpClient.
2023-11-24 07:01:28
389
原创 Activity的启动过程
我们创建一个新的项目,默认的根activity都是MainActivity,而所有的activity都是保存在堆栈中的,我们启动一个新的activity就会放在上一个activity上面,而我们从桌面点击应用图标的时候,由于launcher本身也是一个应用,当我们点击图标的时候,系统就会调用startActivitySately(),一般情况下,我们所启动的activity的相关信息都会保存在intent中,比如action,category等等。
2023-11-24 07:00:46
320
原创 Service生命周期
这种方式启动的话,需要注意一下几个问题,第一:当我们通过startService被调用以后,多次在调用startService(),onCreate()方法也只会被调用一次,而onStartConmon()会被多次调用当我们调用stopService()的时候,onDestroy()就会被调用,从而销毁服务。service 启动方式有两种,一种是通过startService()方式进行启动,另一种是通过bindService()方式进行启动。不同的启动方式他们的生命周期是不一样.
2023-11-24 06:59:44
397
原创 线程、多线程和线程池知识点
线程礼让,Thread.yield()方法,暂停当前正在执行的线程对象,把执行机会让给相同或更高优先级的线程,但并不会使线程进入阻塞态,线程仍处于可执行态,随时可能再次分得CPU时间。当方法进入时,请求一个信号,如果信号被用完则等待,方法运行完,释放一个信号,释放的信号新的线程就可以使用。之所以需要同步,因为在多线程并发控制,当多个线程同时操作一个可共享的资源时,如果没有采取同步机制,将会导致数据不准确,因此需要加入同步锁,确保在该线程没有完成操作前被其他线程调用,从而保证该变量的唯一一性和准确性。
2023-11-24 06:59:05
430
原创 Android网络编程总结
并且,用公钥加密的数据,只有对应的私钥才能解密;这样,数据就能安全着到达双方。解决的办法就是数字证书:小服再给小客发公钥的过程中,会把公钥以及小服的个人信息通过Hash算法生成消息摘要,为了防止摘要被人调换,小服还会用CA提供的私钥对消息摘要进行加密来形成数字签名,当小客拿到这份数字证书之后,就会用CA提供的公钥来对数字证书里面的数字签名进行解密得到消息摘要,然后对数字证书里面小服的公钥和个人信息进行Hash得到另一份消息摘要,然后把两份消息摘要进行对比,如果一样,则证明这些东西确实是小服的,否则就不是。
2023-11-24 06:57:49
891
原创 Linux系统中JAVA创建文件后权限不足应该如何解决
但是通过程序上传的时候,文件上传后所属者也是root,但是权限变成了640.而这个640权限,通过ftp是访问不到的。于是,搜索后,看到一篇文章,但Linux系统umask的默认值是0022,也就是说创建的文件应该是644的权限,而上传的文件却是640的权限。我们知道在Linux系统规定,创建文件的最高权限为666,而创建文件夹的最高权限为777,系统通过变量umask来控制创建文件的权限问题。如果当umask的值为022时,则创建的文件权限为644,即权限是通过最高权限减去umask的值来控制的。
2023-11-23 17:08:52
622
原创 黑客必须掌握的HTML基础
HTML语言是一种标签语言,它不需要编译,可以直接由浏览器执行。在标准网页设计中HTML负责填充网页的内容,HTML编写的超文本文档(文件)称之为HTML文档(网页),它包含了一些html元素,使用html或者htm为文件名后缀,能独立于各种操作系统平台,如Unix、Windows等。
2023-11-23 17:06:12
51
原创 网络基础学习笔记
规范在终端系统之间激活、维护和关闭物理链路的电气机械、流程和功能等方面的要求。应用层:提供应用程序网络接口(HTTP、telnet、ftp、tftp等)数据链路层:物理介质访问(ethernet、802.3、PPP)TCP报文头|上层数据——传输层——segment。LLC报文头|上层数据——数据链路层——Frame。MAC报文头|上层数据——数据链路层——Frame。IP报文头|上层数据——网络层——Packet。传输层:建立端到端的连接(tcp、udp)数据链路层:提供介质访问、链路管理等。
2023-11-23 17:05:08
47
原创 黑客必须掌握的Linux基础
常见的发行版本:RedHat:面向商业市场的Linux发行版,有服务器版本,支持众多处理器架构,包括x86和x86_64。Centos:一款企业级Linux发行版,使用红帽企业级Linux中的免费源代码重新构建而成OpenSuSe:免费的Linux版本,自带Yast软件管理工具Kali:Debian的衍生版,Kali旨在用于渗透测试,随带许多渗透测试工具。Ubuntu:Debian的衍生版,一款深受市场欢迎的免费操作系统,在服务器、云计算,甚至是移动设备上都很常见。
2023-11-23 17:04:11
63
原创 黑客应该掌握的Windows基础
今天我们看看作为一个黑客对于Windows应该掌握哪些基础知识,主要内容包含以下四个方面:系统目录、服务、端口和注册表;黑客常用的DOS命令及批处理文件的编写;黑客常用的快捷键,以及如何优化系统;登录密码破解、手动清除木马病毒。
2023-11-23 17:03:26
61
原创 CSS @规则(At-rules)
字符)开头,后跟一个标识符,并包括直到下一个分号(@规则(at-rule )以一个关键词(一个。)或下一个声明块(以先到者为准)的所有内容。
2023-11-20 07:11:36
90
原创 CSS 属性大全手册(按功能)
SS属性按字母顺序查找,本部分包含属于最新CSS3规范的标准属性的完整列表。所有属性都分为动画属性、背景属性、边框属性、颜色属性、高度宽度尺寸大小、Flex弹性盒子、字体属性、列表项属性、边距属性、轮廓属性、文字字体属性、视觉属性等等。
2023-11-20 07:11:01
301
原创 Drupal 7中的5件事
此外,而不必使用db_query()一切你现在使用的一个的选择db_select(),db_insert(),db_update()或db_delete()功能与您的数据交互。在我看来,Drupal 7还没有准备好投入生产,只是因为某些真正有用的模块(例如Views)尚未发布稳定的版本,并且仍处于beta甚至Alpha版本。这样做的结果是,您现在可以将分类法字段移动到节点表单周围,甚至将其放置到组中,而不是像Drupal 6那样将它们始终作为单独的元素。该模块将解压缩并放置在正确的目录中,以供您激活它。
2023-11-17 06:26:04
57
原创 PHP随机字符串函数
它通过选择要使用的字符类型(例如大写字母,数字等),然后使用该chr()函数随机选择一个字符来工作。该chr()函数将数字作为参数,并将返回与该数字相对应的ascii字符。例如,给定数字65,该chr()函数将返回字符串“ A”。它将遍历此选择过程以构建一个字符串。我以为这是PHPrand()和chr()PHP函数的巧妙用法,所以就在这里。这是此函数产生的输出种类的一些示例。
2023-11-17 06:25:17
189
原创 连接到PHP中的非标准MySQL套接字
php.inipdo_mysql,mysql和mysqli部分中存在一个名为default_socket的文件,如果需要将PHP指向其他套接字,则应首先使用这些设置。还有一些名为MYSQL_SOCKET和MYSQLI_SOCKET的系统常量,它们由PHP在编译时使用正确指定的“ --with-mysql”设置创建。在Linux安装中,MySQL套接字的通常放置位置是/var/run/mysqld/mysqld.sock,但是某些主机可能会对此进行更改。如果您有任何其他经验,我将不胜感激。
2023-11-17 06:24:44
91
原创 如果要获取国家/地区列表及其代码-PHP国家数组
如果要获取国家/地区列表及其代码,请使用以下数组。这些代码是2个字母的ISO代码,3个字母的UN代码和3个数字的UN代码。前几天,我不得不构建该表单,以便以表格形式显示国家/地区列表,因此,如果需要再次使用该表单,请在此处发布。
2023-11-17 06:24:13
358
原创 使用PHP显示动态突出显示的字符串
它的工作原理是使用空格将字符串分成几小段,然后将其重新放回两部分。第一部分是正常的,但是第二部分将被包裹在span元素中。通过使用此功能,您可以通过将前半部分的样式与后半部分的样式不同来在标题中创建有趣的效果。如果字符串中有任何HTML,该函数将无法正常工作,因为它将创建非法嵌套的HTML标签,因此它将在尝试拆分字符串之前检查HTML标签的存在。如果有任何HTML标记,或者字符串中没有空格,则原始字符串将原样返回。*如果字符串中有任何HTML,则拒绝该字符串并返回原始字符串。*(大致)并分别打印这两部分。
2023-11-17 06:23:05
78
原创 使用jQuery将内容加载到没有iFrame的页面上
只是在将DOM加载后将结果加载到页面上并不是在每种情况下都做事的最佳方法,在更改内容以使事情变得更好时,添加“正在加载”图形和带有模糊效果的效果也很好又漂亮 所有这些都是通过页面顶部的link元素控制的。完成此操作后,页面会自动将单词“摆动”的搜索结果加载到测试div中。jQuery中有一个函数,该函数load()将使用AJAX请求将页面中的内容加载到另一个页面上,甚至可以提取页面的特定区域并仅返回那些部分。函数的第一个参数是资源的位置,但是也可以在资源中添加CSS标识符,该标识符将仅带回您要查找的块。
2023-11-17 06:22:33
122
原创 使用Matplotlib从iPython笔记本中将图形另存为文件
要将图形另存为来自iPython的文件,我们可以采取以下步骤-创建一个新图或激活一个现有图。使用方法将轴添加到图形中。绘制给定列表。使用方法保存图。
2023-11-17 06:21:38
52
原创 jQuery $ .noConflict()方法
如您所知,jQuery使用美元符号($)作为的快捷方式或别名jQuery。$就像jQuery一样,许多JavaScript库都将其用作函数或变量名。如果两个不同的库使用同一快捷方式,则其中一个可能会停止工作。幸运的是,jQuery提供了一种特殊的方法来处理这种情况。
2023-11-17 06:19:32
113
原创 jQuery DOM遍历
DOM遍历基本上意味着在组成网页的DOM周围移动。遍历DOM时,可以将文档树上移到任何所需的元素。您还可以将层次结构向下移动到给定的子节点,或移到同级节点。这使您可以浏览HTML页面,以找到需要收集一些数据或进行更改的确切位置。下图将HTML页面显示为树(DOM树)。使用jQuery遍历,您可以从所选元素开始轻松地在树中向上(祖先),向下(后裔)和侧向(同级)移动。这种移动称为DOM树的遍历-或导航-或移动。从上图可以看到:<html>是<head>和<body>的父元素,它是所有元素的祖先。
2023-11-17 06:18:59
94
原创 jQuery 回调函数(Callback)
JavaScript语句逐行执行。但是,由于jQuery效果需要一些时间才能完成,因此下一个代码行可能会在前一个效果仍在运行时执行。为了防止这种情况的发生,jQuery为每个效果方法提供了一个回调函数。回调函数作为效果方法的参数传递,它们通常显示为方法的最后一个参数。alert("该段落现已隐藏");// 效果完成后要执行的代码。当前效果完成后,将执行回调函数。
2023-11-17 06:18:28
443
原创 jQuery 事件方法
事件是Web应用程序可以检测到的操作。jQuery提供了将事件处理程序附加到选择的简单方法。发生事件时,将执行提供的函数。以下是示例事件:网页加载点击一个元素将鼠标移到元素上提交HTML表格键盘上的按键等。
2023-11-17 06:17:41
117
原创 jQuery 选择器
jQuery的最基本概念是“选择一些元素并对其进行处理”。jQuery选择器使您可以“查找”(或选择)网页中的HTML元素。jQuery支持大多数,以及一些非标准选择器。jQuery中的所有选择器都以美元符号和括号:开头$()。
2023-11-17 06:16:50
41
原创 jQuery 语法
jQuery语法是通过使用HTML元素选择器进行的,并对元素执行一些操作。jQuery基本语法:$ 标志定义jQuery(selector) 用于查找HTML元素action() 用于对元素执行操作示例:$(this).hide():用于隐藏当前元素$("p").hide():用于隐藏所有元素$(".para").hide():用于隐藏所有带有class="para"的元素$("#para").hide():用于隐藏id="para"的元素jQuery使用CSS语法选择元素。
2023-11-17 06:16:08
71
DA-TLC5615s数码管显示电压FPGA 设计 VERILOG例程源码quartus工程文件.zip
2023-11-07
DA-TLC5615-呼吸灯 FPGA 设计VERILOG例程源码quartus工程文件.zip
2023-11-07
RTD2556 VGA+HDMI+DP转EDP 硬件设计PDF原理图+PADS PCB文件+手册文档及驱动源码.zip
2021-10-26
NXP i.MX8M Plus核心板(6层)+开发底板(8层) Cadence设计硬件原理图+PCB文件.zip
2021-10-26
串行加法器4位全加器 FPGA设计Verilog逻辑源码Quartus工程文件.zip
2021-08-23
半整数分频1.5小数分频的功能 FPGA设计Verilog逻辑源码Quartus工程文件.zip
2021-08-23
8线-3线编码器 优先编码器+八选一数据选择器 FPGA设计Verilog逻辑源码Quartus工程文件.zip
2021-08-23
同步24进制计数器FPGA设计Verilog逻辑源码Quartus工程文件.zip
2021-08-23
模为60的BCD码加法计数器FPGA设计Verilog逻辑源码Quartus工程文件.zip
2021-08-23
同步4位可逆计数器Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件.zip
2021-08-23
占空比1:4的5分频奇数分频Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件.zip
2021-08-23
占空比1:1的2、4、8分频 偶数分频Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件.zip
2021-08-23
无置数端+有置数端可变模计数器Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件.zip
2021-08-23
同步十位减法计数器Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件.zip
2021-08-23
AT89C51+DS18B20+LED显示的强大万年历proteus仿真实例源码.zip
2023-11-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人