学生信息管理测试报告 1. 项目背景学生信息管理系统主要实现的业务为管理学生的信息,并记录管理学生的班级和入学日期等。通过用户登录,可以进行对相应班级的学生信息进行新增、删除、修改、查询操作。2. 测试概要分别进行图片中的测试。1. 登录功能没有Bug产生2. 学生信息显示功能无Bug产生3.学生信息查询功能无Bug产生,通过该功能测试,在后期可进行其他标题的查询方式,增加功能便捷程度。4. 学生信息增加功能...
归并排序 public class 归并排序 { public static void mereSorInt(int[] array, int low, int high) { if (low >= high) { return; } //分解 int mid = (low + high) >>> 1; mereSorInt(array, low, mid);//分割成一个元素
静态内部类和非静态内部类的区别 一、非静态内部类:1、变量和方法不能声明为静态的。(类的编译顺序:外部类–静态方法或属性–内部类)2、实例化的时候需要依附在外部类上面。比如:B是A的非静态内部类,实例化B,则:A.B b = new A().new B();3、内部类可以引用外部类的静态或者非静态属性或者方法。二、静态内部类:1、属性和方法可以声明为静态的或者非静态的。2、实例化静态内部类:比如:B是A的静态内部类,A.B b = new A.B();3、内部类只能引用外部类的静态的属性或者方法。4、如果属性或者方法声明为
快速排序及其优化 //时间复杂度:O(n^2)//空间复杂度O(nlog n)//不稳定public class 快速排序 { public static int partition(int[] array, int low, int high) { int tmp = array[low]; while (low < high) { // 当队尾的元素大于等于基准数据时,向前挪动high指针 while (low <
冒泡排序 public class 冒泡排序 { //时间复杂度 O(n^2) //空间复杂度O(1) //稳定 public static void func(int[] array) { for (int i = 0; i < array.length; i++) {//总共比较的次数 boolean flag = false; for (int j = 0; j < array.length - 1 -
选择排序 //时间复杂度:O(n^2)//空间复杂度:O(1)//不稳定public class 希尔排序 { public static void shellSort(int[] array) { int[] drr = {5, 3, 1}; for (int i = 0; i < drr.length; i++) { shell(array, drr[i]);//分组进行插入排序 } } //即插入排序的
希尔排序 //时间复杂度 O(n^2)//空间复杂度O(1)public class 希尔排序 { public static void shellSort(int[] array) { int[] drr = {5, 3, 1}; for (int i = 0; i < drr.length; i++) { shell(array, drr[i]);//分组进行插入排序 } } //即插入排序的思想
插入排序 //稳定//时间复杂度: 空间复杂度:O(1)//最好:O(n)//最坏:O(n^2)public class 插入排序 { public static void func(int[] array) { int tmp = array[0]; for (int i = 1; i < array.length; i++) { tmp = array[i]; int j;
float和double的区别 1、C中float和double的区别float:单精度类型,最多可以精确到小数点为7位,占用内存为4字节,占用内存的消耗速度为double的一半double:双精度类型,最多可以精确到小数点为16位,占用内存为8字节,占用内存的消耗速度为float的两倍一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数快。参考博客:https://www.cnblogs.com/liutianci/p/8443372.html...
简述TCP三次握手和四次挥手过程 TCP握手协议 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接.第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; SYN:同步序列编号(Synchronize Sequence Numbers)第二次握手:服务...
HTTPS和HTTP的区别 HTTPS和HTTP的区别主要如下:1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。客户端在使用HTTPS方式与web服务器通信时有以下几个步骤:(
Cookie和Session的区别 1、cookie数据存放在客户的浏览器上,session数据放在服务器上。2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗考虑到安全应当使用session。3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能考虑到减轻服务器性能方面,应当使用COOKIE。4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。...
.线程和进程的区别 进程进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体。进程是一种抽象的概念,从来没有统一的标准定义。进程一般由程序,数据集合和进程控制块三部分组成。程序用于描述进程要完成的功能,是控制进程执行的指令集;数据集合是程序在执行时所需要的数据和工作区;程序控制块包含进程的描述信息和控制信息是进程存在的唯一标志。进程具有的特征:动态性:进程是程序的一次执行过程,是临时的,有生命期的,是动态产生,动态消亡的;并发性:任何进程
ArrayList、LinkedList、HashSet、HashMap底层内部数据结构 一、ArrayListArrayList的底层数据结构就是一个数组,数组元素的类型为Object类型,对ArrayList的所有操作底层都是基于数组的。二、LinkedListJava中的LinkedList类实现了List接口和Deque接口,是一种链表类型的数据结构,支持高效的插入和删除操作,同时也实现了Deque接口,使得LinkedList类也具有队列的特性。LinkedList类的底层实现的数据结构是一个双端的链表。LinkedList类中有一个内部私有类Node,这个类就代表双端链表的节
Java习题8 下面的程序 编译运行后,在屏幕上显示的结果是(A)public class test {public static void main(String args[]) {int x,y;x=5>>2;y=x>>>2;System.out.println(y);}}A、 0B 、2C 、5D 、80解析:Java中的位运算符: **> >**表示右移,如果该数为正,则高位补0,若为负数,则高位补1。**>>>**表示.
线程安全 线程线程状态转移图什么是线程安全?程序运行的结果完全符合预期,不会出现有时正确,有时错误。即(消除随机性并且正确)线程不安全的原因是什么?Java中的语句,对应不一定是一条字节码文件,更不一定是一条CPU指令线程调度中有随机性存在。什么时候从 CPU上被调度下来 以及什么时候被调度回CPU上什么情况会出现线程不安全?1. 线程之间有共享的数据。即线程之间不存在共享,天生是线程安全的。2. 即使线程之间有共享,但没有线程修改共享数据,则天生是线程安全的。JVM的运
Java习题7 下列与队列结构有关联的是(D)A、 函数的递归调用B 、数组元素的引用C 、多重循环的执行D、先到先服务的作业调度解析:主要在于使用LinkedList模拟队列和堆栈的存储方式。① 队列数据结构的存储特点:先进先出~方法: offer()、poll()② 堆栈数据结构的存储特点:先进后出~方法: push()、pop()下面属于黑盒测试方法的是(C)A 、语句覆盖B 、逻辑覆盖C 、边界值分析D 、路径覆盖解析:黑盒测试包含:等价类划分、边界值分析、因果图分析、错误.
Java习题6 以下代码运行输出的是(C)public class Person{private String name = "Person";int age=0;}public class Child extends Person{public String grade;public static void main(String[] args){Person p = new Child();System.out.println(p.name);}}A、 输出:PersonB 、没有输出.
Java习题5 A 派生出子类 B , B 派生出子类 C ,并且在 java 源代码有如下声明:A a0=new A();A a1=new B();A a2=new C();问以下哪个说法是正确的?(D)A 、只有第一行能通过编译B 、第1、2行能通过编译,但第3行编译出错C 、第1、2、3行能通过编译,但第2、3行运行时出错D 、第1行,第2行和第3行的声明都是正确的解析:下面代码将输出什么内容:(B)public class SystemUtil{public static bool.
Java习题0604 执行如下程序,输出结果是( C)class Test{ private int data; int result = 0; public void m() { result += 2; data += 2; System.out.print(result + " " + data); }}class ThreadExample extends Thread{ private Test mv; public ThreadExample(Test mv) { this.mv.