自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

木子 旭的博客

整理了一下自己的所学所感,希望对爱学习的大家能够提供一分帮助

  • 博客(385)
  • 收藏
  • 关注

原创 Android5——活动的生命周期方法

1.活动的生命周期方法onCreate会在活动第一次被创建的时候使用。onStart会在活动由不可见变为可见的时候调用OnResume会在活动准备好和用户进行交互的时候调用。此时的活动一定位于返回栈的栈顶,并且处于运行状态。onPause这个方法会在系统去启动或者恢复另一个活动的时候调用。我们通常会在这个方法中将一些消耗CPU的资源释放掉,以及保存一些关键数据,但这个方法的执行速度一定要快,不然会影响到新的栈顶活动的使用。onStop这个方法在活动完全不可见的时候调用。它和onPaus

2022-03-17 15:29:21 2465

原创 Android4——使用Intent进行传参

1.向下一个活动传递数据public void onClick(View view) { Intent intent = new Intent(FirstActivity.this,SecondActivity.class); intent.putExtra("aaaa","123456"); startActivity(intent);}第一个点击按钮,给Intent传入键值对Intent intent = getIntent();String stringExtr

2022-03-14 15:24:50 2414

原创 Android3——初步使用Intent跳转activity

1.隐式使用 <activity android:name=".SecondActivity" android:exported="false"> <intent-filter> <action android:name="aaa" /> <category android:name="android.intent

2022-03-14 14:59:37 2786

原创 Android2——Menu

1.创建Menu文件夹2.在menu.xml中配置相关的item<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/add_item" android:title="Add"/> <item an

2022-03-14 12:23:36 167

原创 Android1——Toast的使用

1.示例代码 button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Toast.makeText(FirstActivity.this, "You clicked Button 1", Toast.LENGTH_LONG).show(); }

2022-03-14 11:56:22 2180

原创 前端条形码bwip.js的使用精简说明

bwip.js的使用简单说明

2022-02-11 16:23:51 1474

原创 浏览器渲染页面的流程

1.DOM浏览器获取html文件。浏览器将获取的html文件转化成为Token。浏览器吧Token转化成为节点对象浏览器将这些节点相连,变成DOM2.CSSOM浏览器在读html文件的时候遇到link标签获取css文件。浏览器将获取的css文件转化成为token。浏览器将Token转化成为节点对象。浏览器将这些结点结合成为CSSOM。3.渲染树匹配DOM和CSSOM的节点,并捕获可见内容4.布局布局用来获取渲染树的结构、节点位置和大小。布局依据盒子模型来进行,每个元素都

2022-01-04 21:46:59 248

原创 计算机操作系统知识点总结(2.2.1)——处理机调度的概念层次

2021-10-09 15:24:18 97

原创 计算机组成原理知识点总结(2.1.5)——线程概念和多线程模型

2021-10-08 20:54:34 153

原创 计算机组成原理知识点总结(2.1.4)——进程通信

进程通信就是指进程之间的信息交换。

2021-10-08 15:59:11 88

原创 计算机操作系统知识点总结(2.1.3)——进程控制

进程管理的主要功能是对系统中所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能用原语来实现进程控制,原语的特点是执行期间不允许中断,只能一气呵成,这种不可被中断的操作及原子操作。原语采用“关中断指令”和“开中断指令”实现。关/开中断指令的权限非常大,必然是只允许在核心态下执行的特权指令原语运行在核心态。原语要做的三件事情:(1)更新PCB中的信息①所有的进程控制原语一定都会修改进程状态标志。②剥夺当前运行进程的CPU使用权必然需要保存起运行环境。③某进程开始前必然需要.

2021-10-04 19:52:10 193

原创 计算机操作系统知识点总结(2.1.2)——进程的状态与转换

进程的三种基本状态:(1)运行态:占有CPU,并在CPU上运行。(单核处理机每一时刻最多只能有一个进程处于运行态,双核环境下可以同时有两个进程处于运行态)(2)就绪态:已经具备运行条件,但由于没有空闲CPU,而暂时不能运行。(万事俱备,只欠CPU)(3)阻塞态:因等待某一事件而暂时不能运行。(为了提高CPU的利用率,需要先将其它进程需要的资源分配到位,才能得到CPU的服务)进程的另外两种状态:(1)创建态:进程正在被创建,操作系统为进程分配资源、初始化PCB。(2)终止态:进程正在从系统中撤..

2021-10-04 11:14:21 901

原创 计算机操作系统知识点总结(2.1.1)——进程的定义、组成、组织方式和特征

内存分为程序段和数据段:程序段:存放程序的代码。数据段:存放程序运行过程处理的数据(如变量)。2.PCB:系统为每个正在运行的程序配置了一个数据结构称为进程控制块(PCB),用来描述进程的各种信息。进程实体(进程映像):程序段、数据段和PCB三部分构成了进程实体(进程映像)。所谓创建进程,实质上就是创建进程实体中的PCB;撤销进程,实质上就是撤销进程实体中的PCBPCB是进程存在的唯一标志!进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。严格来讲,进程实体和进程并不一..

2021-10-04 10:52:00 259

原创 计算机操作系统知识点总结(1.1.6)——系统调用

操作系统面向用户向其提供命令接口:(1)联机命令接口:用户说一句,系统做一句。(2)脱机命令接口:用户说一堆,系统做一堆。操作系统面向程序向其提供程序接口:允许用户通过程序间接使用,由一组系统调用组成。系统中的各种共享资源都由操作系统统一掌管,因此在用户程序中,凡是与资源有关的操作(如存储分配、I/O操作、文件管理等),都必须通过系统调用的方式向操作系统提出服务请求,由操作系统代为完成。这样可以保证系统的稳定性和安全性,防止用户进行非法操作。系统调用的相关处理涉及到对系统资源的...

2021-09-16 11:14:42 215

原创 计算机操作系统知识点总结(1.1.5)——中断和异常

中断的本质:发生中断就意味着需要操作系统介入,开展管理工作。中断的概念:(1)当中断发生时,CPU立即进入核心态。(2)当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理。(3)对于不同的中断信号,会进行不同的处理。中断的作用:中断可以使CPU从用户态切换为核心态,使操作系统获得计算机的控制权。有了中断,才能实现多道程序并发执行。用户态→核心态是通过中断实现的,并且中断是唯一途径。核心态→用户态是通过执行一个特权指令,将程序状态字(PSW)的标志位设置为“用户态”。..

2021-09-15 21:58:39 566

原创 计算机操作系统知识点总结(1.1.4)——操作系统的运行机制与体系结构

什么是指令:指令就是处理器CPU能识别、执行的最基本命令。两种指令:(1)特权指令:如内存清空指令,这类权限很高的指令。(随意使用会危害计算机的资料,所以不允许用户程序使用)(2)非特权指令:如普通的运算指令,加减乘除这些普通的人畜无害的运算指令等。两种处理器状态:(1)用户态(目态):此时CPU只能执行非特权指令。(2)核心态(管态):特权指令、非特权指令都可以执行。用程序状态字寄存器(PSW)中的某标识位来标识当前处理器处于什么状态。如0为用户态,1为核心态。两种程序:(1)内核程..

2021-09-14 21:54:11 157

原创 计算机操作系统知识点总结(1.1.3)——操作系统的发展与分类

操作系统发展的七个阶段(前面四个重点)(1)手工操作阶段(2)批处理阶段:单道批处理阶段→多道批处理阶段(多道批处理阶段这个时候,操作系统正式诞生)(3)分时操作阶段(4)实时操作系统(5)网络操作系统(6)分布式操作系统(7)个人计算机操作系统手工操作阶段主要缺点:用户独占全机,人机速度矛盾导致资源利用率极低。单道批处理阶段主要优点:缓解了一定程度的人及速度矛盾,资源利用率有所提升。单道批处理阶段主要缺点:内存中仅有一段程序运行,只有该程序结束之后才能调入下一道程序。CPU有大量的时.

2021-09-12 21:40:44 355

原创 计算机操作系统知识点总结(1.1.2)——操作系统的特征

操作系统的四个特征:(1)并发(2)共享(3)虚拟(4)异步并发和并行的差异:并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。并行:指两个或多个事件在同一时刻同时发生。一个单核处理机(CPU)同一时刻只能执行一个程序,因此操作系统会负责协调多个程序交替执行(这些程序微观上是交替执行的,但宏观上看起来就像在同时执行)。事实上,操作系统就是伴随着“多道程序技术”而出现的。因此:操作系统和程序并发是一起诞生的。当今的计算机,一般都是多核CPU,比.

2021-09-12 21:04:32 162

原创 计算机操作系统知识点总结(1.1.1)——操作系统的概念、功能和目标

操作系统:进程:进程是一个程序的执行过程。执行前需要将程序放到内存中,才能被CPU处理

2021-09-11 10:37:10 486

原创 javascript高级程序设计阅读收获(10.6.1)——静态私有变量

(function(){ let privateVariable = 10; function privateFunction(){ return false; } MyObject = function(){}; MyObject.prototype.publicMethod = function(){ privateVariable++; return privateFunction(); };})();在这个模式中,匿名函数表达是创建了一个包含构造函数及其方法的私有

2021-09-09 21:43:28 74

原创 前端面试题收集(2021/9/5)

1. javascript中什么是基本数据类型什么是引用数据类型?以及各个数据类型是如何储存的?基本数据类型:(1)Number(2)String(3)Boolean(4)Null(5)Undefined(6)Symbol(ES6新增的)(7)bigInt引用数据类型统称Object类型,细分的话有:(1)Object(2)Array(3)Date(4)Function(5)RegExp基本数据类型直接存储在栈中,引用数据类型存储在堆中。在栈中保存数据的引用地址,这个地址指向

2021-09-06 16:23:16 58

原创 javascript高级程序设计阅读收获(10.16)——私有变量和特权方法

1.什么是私有变量function add(num1,num2){ let sum = num1 + num2; return sum;}num1,num2和sum就是私有变量,这几个变量只能在函数内部使用。2.什么是特权方法function MyObject(){ let privateVariable = 10; function privateFunction(){ return false; } this.publicMethod = function(){ pr

2021-09-05 16:50:00 86

原创 javascript高级程序设计阅读收获(10.15)——立即调用的函数表达式

1.什么是立即调用的函数表达式(function(){ //块级作用域})();上面第一组括号后面的第二组括号会立即调用前面的函数表达式。只要函数执行完毕,其作用域链就可以被销毁。

2021-09-05 16:03:00 63

原创 javascript高级程序设计阅读收获(10.14.2)——内存泄露

function assignHandler(){ let element = document.getElementById('someElement'); element.onclick = () => console.log(element.id);}上面的代码创建了一个闭包,即element元素的事件处理程序。而这个处理程序又创建了一个循环引用。匿名函数引用着assignHandler()的活动对象,组织了对element的引用计数归零。只要这个匿名函数存在,element的

2021-09-03 11:33:20 73

原创 javascript高级程序设计阅读收获(10.14.1)——闭包中的this对象

window.identity = 'The Window';let object = { identity:'My Object', getIdentityFunc(){ return function(){ return this.identity; } }}console.log(object.getIdentityFunc()());//the Window内部函数永远不可能直接访问外部函数的this和arguments这两个变量,所以上述代码中的this指向了wi

2021-08-26 10:00:43 85

原创 javascript高级程序设计阅读收获(10.14)——闭包

function createComparisonFunction(propertyName){ return function(object1,object2){ let value1 = object1[propertyName]; let value2 = object2[propertyName]; if(value1 < value2){ return -1; }else if(value1 > value2){ return 1; }else{

2021-08-26 08:57:07 67

原创 javascript高级程序设计阅读收获(10.13)——尾调用优化

1.尾调用优化的条件代码在严格模式下执行。外部函数的返回值是对尾调用函数的调用。尾调用函数返回后不需要执行额外的逻辑。尾调用函数不是引用外部函数作用域中自由变量的闭包。下面是无尾调用优化的例子:"user strict"//无优化:尾调用没有返回function outerFunction(){ innerFunction();}//无优化:尾调用没有直接返回function outerFunction(){ let innerResult = innerFunction()

2021-08-16 18:09:23 88

原创 javascript高级程序设计阅读收获(10.12)——递归

function factorial(num){ if(num <= 1 ){ return 1; }else{ return num * factorial(num-1) }}上面就是一个递归函数,递归函数通常的形式是一个函数通过名称调用自己。function factorial(num){ if(num <= 1 ){ return 1; }else{ return num * factorial(num-1) }}let anotherFacto

2021-08-15 13:28:12 67

原创 javascript高级程序设计阅读收获(10.11)——函数表达式

if(condition){ function sayHi(){ console.log('Hi!'); }}else{ function sayHi(){ console.log('Yo!'); }}let sayHi;if(condition){ sayHi =function(){ console.log('Hi!'); }}else{ sayHi = function(){ console.log('Yo!'); }}上述是函数申明的写法,但是在E

2021-08-15 13:22:10 83

原创 javascript高级程序设计阅读收获(10.10)——函数属性与方法

1.length属性function aaa(a1){ }function bbb(a1,a2){}function ccc(a1,a2,a3){ }console.log(aaa.length);//1console.log(bbb.length);//2console.log(ccc.length);//3length属性保存函数定义的命名参数的个数。2.apply和call方法function sum(num1,num2){ console.log(num1 +

2021-08-13 15:55:56 61

原创 javascript高级程序设计阅读收获(10.9.4)——new.target

function aaa(){ if(!new.target){ console.log(111); }else{ console.log(222); console.log(new.target); }}new aaa();//222aaa();//111,ƒ aaa()ECMAScript中的函数始终可以作为构造函数实例化一个新对象,也可以作为普通函数被调用。如果函数正常调用,则new.target的值是undefined;如果是使用new关键字调用的,则new.tar

2021-08-12 10:22:24 85

原创 javascript高级程序设计阅读收获(10.9.3)——caller

function aaa(){ bbb(); console.log(aaa.caller);//null}function bbb(){ console.log(bbb.caller);//ƒ aaa() console.log(arguments.callee.caller);//ƒ aaa()}aaa();函数对象上的caller属性引用的是调用当前函数的函数(父函数)。如果在全局作用域调用的则为null。如果要降低耦合度,可以通过arguments.callee.calle

2021-08-12 10:16:54 78

原创 javascript高级程序设计阅读收获(10.9.2)——this

1.在标准函数中window.color = "red";let o ={ color:'blue'}function sayColor(){ console.log(this.color);}sayColor();//redo.sssColor = sayColor;o.sssColor();//blue在标准函数中,this引用的是把函数当成方法调用的上下文对象。在网页的全局上下文调用函数时,this指向windows。使用对象调用函数的话,函数中的this会指向该对

2021-08-11 19:55:45 56

原创 javscript高级程序设计阅读收获(10.9.1)——arguments

function aaa(){ console.log(arguments[0]);//1 console.log(arguments[1]);//2 console.log(arguments[2]);//3 console.log(arguments[3]);//4}aaa(1,2,3,4,5);arguments对象可以调用函数中传入的参数。function sum(num1,num2){ console.log(arguments.callee);//ƒ sum(num1,n

2021-08-11 11:26:26 60

原创 JavaScript高级程序设计阅读收获(10.8)——函数作为值

function add10(num){ return num +10;}function callSomeFunction(someFunction, someArgumnet){ return someFunction(someArgumnet);}console.log(callSomeFunction(add10,20));//30函数的参数可以是一个函数。如果将函数作为参数传入进去,那么不要在后面加上括号。function aaa(){ return function(a

2021-08-11 10:15:34 54

原创 javascript高级程序设计阅读收获(10.7)——函数申明与函数表达式

1.函数申明console.log(sum(10,10));//20function sum(num1,num2){ return num1 + num2;}上面例子中是函数申明。在执行代码的时候,JavaScript引擎会先执行一遍扫描,把发现的函数声明提高到源代码树的顶部,所以可以再函数申明之前使用这个函数。2.函数表达式console.log(sum(10,10));//ReferenceError: sum is not definedlet sum = function(n

2021-08-10 11:27:12 67

原创 javascript高级程序设计阅读收获(10.6.2)——收集参数

function aaa(a1,...values){ console.log(a1);//1 console.log(values);//[2,3,4,5,6,7]};aaa(1,2,3,4,5,6,7);收集参数就是上面例子中的...values收集参数只能作为最后一个参数(不能在a1前面)let getSum = (...values) =>{ console.log(values);//[1,2,3]}getSum(1,2,3);箭头函数不支持arguments

2021-08-10 11:17:20 97

原创 javascript高级程序设计阅读收获(10.6.1)——扩展参数

function getProduct(a,b,c=1){ return a*b*c;}console.log(getProduct(...[1,2]));//2console.log(getProduct(...[1,2,3]));//6console.log(getProduct(...[1,2,3,4]));//6console.log(getProduct(...[1,2],...[5,2]));//10可以使用扩展操作符来进行传参。...

2021-08-10 10:18:16 65

原创 javascript高级程序设计阅读收获(10.5)——默认参数值

function makeKing(name = 'Henry',numerals = 'VIII'){ return `King ${name} ${numerals}`}console.log(makeKing());//King Henry VIIIconsole.log(makeKing(undefined,'V'));//King Henry V可以在参数中使用‘=’给参数赋一个默认值。当传入的参数为undefined时就会使用这个默认参数值。function makeKing

2021-08-10 10:10:48 65

原创 javascript高级程序设计阅读收获(10.4)——没有重载

function addSomeNumber(num){ return num + 100;}function addSomeNumber(num){ return num + 200;}let result = addSomeNumber(100);console.log(result);//300ECMAScript函数不能像传统编程那样重载。如果ECMAScript中定义了两个同名函数,则后定义的会覆盖先定义的。...

2021-08-10 09:39:33 54

空空如也

空空如也

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

TA关注的人

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