自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 项目“天天动听”测试用例

音乐播放器查询功能测试总结:建议型bug:基本的功能都可以正确的实现,但是对于空格无法自动删除情况还可以做出一些改进。查询条件存储问题,需要按tab键才可以进行存储,并按tab键无法直接绑定到查询按钮,可以做出改进。主页面无法进行翻页功能。音乐播放器上传功能测试总结:较严重等级bug:对于上传相同的文件,点击上传,服务器未响应,这个会影响用户体验。一般等级bug:对上传一个文件名称过长(97字符)的文件,点击上传按钮服务器出现500状态码。选择非.mp3文件类型,未提示错误.

2020-08-23 12:23:09 219

原创 软件开发常见模型(瀑布模型、V模型、W模型、敏捷开发模型)

软件开发经典流程图一、瀑布模型模型图定义:瀑布模型(Waterfall Model)是将软件生存周期的各项活动规定为按固定顺序而连接的若干阶段工作,形如瀑布流水,最终得到软件产品。地位:这是一种经典模型,提供了软件开发的基本框架。优点:1)各阶段划分清晰2)强调计划与需求分析3)适合需求稳定的产品开发缺点:1)单一流程,不可逆2)风险显露得晚,纠正机会少3)测试只是其中一个阶段,缺乏全过程测试思想二、V 模型模型图定义:RAD (Rap Application Devel

2020-08-11 14:40:20 12823

原创 对比线程和进程

一、线程的优点1、创建一个新线程的代价比创建一个新进程要小得多;2、与进程之间的切换相比,线程之间的切换需要操作系统做的工作要少很多;3、线程占用的资源要比进程小很多;4、能充分利用多处理器的可并行数量;5、在等待慢速 I/O 操作结束的同时,程序可执行其他的计算业务;6、计算密集型应用,为了能在多处理器系统上运行,将计算分解到多个线程中实现;7、I/O密集型应用,为了提高性能,将I/O操作重叠。线程可以同时等待不同的I/O操作。二、进程与线程的区别1、进程是系统进行资源分配和调度的一个独

2020-07-25 22:59:16 434

原创 ArrayList 和 LinkedList 的区别——可能有你不知道的!!!

一、相同点1、二者都实现了 List 接口;2、二者都实现了增删查改的功能;3、二者都是线程不安全的,如果想要实现线程安全,可借助 collections 方法,得到线程安全的,从而在多线程中使用。二、不同点1、实现原理不同ArrayList 的底层是基于数组来数显的,而LinkedList 的底层是基于双线链表来实现的。2、各个实现的功能效率不同1)ArrayList 的中间插入元素效率的时间复杂度是 O(n); LinkedList 中间插入元素的时间复杂度是 O(1) ,单从中间插入来

2020-07-24 17:42:31 162

原创 多线程带来的风险——线程安全

一、什么是线程安全如果多线程环境下代码运行的结果是符合我们预期的,即在单线程环境应该的结果,则说这个程序是线程安全的。二、线程不安全的原因1、线程是抢占式执行线程之间的调度完全是由内核负责,用户代码感知不到,也无法控制。2、自增操作不是原子的每次++都能拆成三个步骤(1)把内存中的数据加载到 cpu 上(2)cpu 进行++操作(3)将++后的值重新写入内存中当 CPU 在执行三个步骤中的任何一个步骤的时候都有可能被调度器调走,让其他线程来执行。注:什么是原子性:我们把一段代码想象成

2020-07-22 17:36:13 268

原创 多线程基础(新手入门必看)

一、线程概念进程是系统分配资源的最小单位,线程是系统调度的最小单位。一个进程内的线程之间是可以共享资源的。每个进程至少有一个线程存在,即主线程。二、创建线程的主要方法1、方法一:继承Thread类可以通过继承 Thread 来创建一个线程类,该方法的好处是 this 代表的就是当前线程,不需要通过 Thread.currentThread() 来获取当前线程的引用public class ThreadTest3 { static class MyThread extends Thread

2020-07-21 23:36:51 349

原创 操作系统进程线程基础

一、操作系统1、概念任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)。笼统的理解,操作系统包括:1)内核(进程管理,内存管理,文件管理,驱动管理)2)其他程序(例如函数库,shell程序等等二、进程1、 进程的初步认识对于操作系统来说,一个任务就是一个进程(Process)。课本概念:程序的一个执行实例,正在执行的程序等。内核观点:担当分配系统资源(CPU时间,内存)的实体。2、如何理解进程?如:小明去银行转账,就要使用银行的资源(接待,转账人员,银行电脑,必要时保安也可以

2020-07-16 22:49:21 114

原创 Java当中的 Set 和 Map

一、模型一般把搜索的数据称为关键字(Key),和关键字对应的称为值(Value),所以模型会有两种:纯 key 模型,即我们 Set 要解决的事情,只需要判断关键字在不在集合中即可,没有关联的 value;Key-Value 模型,即我们 Map 要解决的事情,需要根据指定 Key 找到关联的 Value。二、Set1、常见方法方法解释boolean add(E e)添加元素,但重复元素不会被添加成功void clear()清空集合boolean cont

2020-05-20 18:25:09 174

原创 Java当中常见的排序方法

一、插入排序1、直接插入排序原理整个区间被分为有序区间、 无序区间。每次选择无序区间的第一个元素,在有序区间内选择合适的位置插入。2、实现代码public static void insertSort(int[] array) { for (int bound = 0; bound < array.length; bound++) { //有序区间 [0, bound) //无序区间 [cur, array.length)

2020-05-17 18:15:48 188

原创 栈和队列

一、栈1、概念栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out的原则。压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。出栈:栈的删除操作叫做出栈。出数据在栈顶2、栈的实现二、队列1、概念队列:只允许在一端进行插入数据操作,在另一端进行...

2020-05-03 18:24:24 168

原创 Java 二叉树的先序遍历

一、二叉树先序遍历的核心代码二、先序遍历过程图解以以上这棵树为例:三、文字叙述递归过程说明:括号里面为打印这个树的值(A) 访问 A 这棵树的根节点(B) 递归处理 A 的左子树(访问左子树的根节点也就是 B)(D) 递归处理 B 的左子树(访问左子树的根节点也就是 D)此时发现 D 没有左子树,不需要继续递归又发现 D 没有右子树,也不需要继续递归这时,D 这棵树...

2020-05-01 16:47:58 651

原创 Java当中的继承、多态和接口

一、继承1、基本格式:class 子类 extends 父类 {}注意事项:(1)使用 extends 指定父类(2)Java 中 (而C++/Python等语言支持多继承)(3)子类会继承父类除了构造方外的所有东西(4)对于父类的 private 的字段和方法,子类中是无法访问的(5)子类的实例中,也包含着父类的实例.。可以使用 super 关键字得到父类实例的引用(6)子类...

2020-04-03 18:35:16 276

原创 Java的方法重载与方法递归

一、方法1、方法的基本概念方法就是一个代码片段, 类似于 C 语言中的 “函数”。2、方法存在的意义(1)是能够模块化的组织代码(当代码规模比较复杂的时候)。(2)做到代码被重复使用,一份代码可以在多个位置使用。(3)让代码更好理解更简单。(4)直接调用现有方法开发,不必重复。3、方法的调用(1)定义方法的时候,不会执行方法的代码,只有调用的时候才会执行。(2)当方法被调用的时...

2020-03-10 22:46:27 233

原创 Java当中的变量

一、变量变量指的是程序运行时可变的量. 相当于开辟一块内存空间来保存一些数据。二、变量的命名规则1.一个变量名只能包含数字,字母,下划线 ,&。2. 数字不能开头。3. 变量名是大小写敏感的。 即 num 和 Num 是两个不同的变量。注意: 虽然语法上也允许使用中文/美元符($)命名变量, 但是强烈不推荐这样做。三、变量类型1.整形变量 int格式:int 变量名 =...

2020-03-07 15:45:18 192

原创 冯诺依曼结构体系

采用存储程序方式,指令和数据不加区别混合存储在同一个存储中,数据和程序在内存中式没有区别的,他们都是内存中的数据,当EIP指针指向哪CPU就加载那段内存中的数据,如果是不正确的指令格式,CPU就会发生错误中断,在现在的CPU的保护模式中,每个内存段都是其描述符,这个描述符记录着这个内存段的访问权限(可读,可写,可执行),这就变相的指定了哪些内存中的存储的是指令的哪些数据,指令和数据都可以送到运算器...

2020-03-02 17:20:33 4747

原创 进制的转换(二进制与十进制,十六进制,八进制之间的转换)

1.十进制转二进制二进制由二进制码0,1组成。对于一个十进制的数,转化为二进制,对整数部分进行除二处理,如十进制数10:10/2=5 余05/2=2 余12/2=1 余01/2=0 余1对于整数要倒着取余数,所以十的二进制就是1010B(B表示二进制)。对于小数,如0.25:0.25×2=0.5 取整数00.5×2=1.0 取整数1所以0.25的二...

2020-03-01 19:53:13 4136

空空如也

空空如也

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

TA关注的人

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