- 博客(63)
- 收藏
- 关注
原创 软件测试
一、答疑篇为什么选择软件测试行业?你有什么优秀的素质一、什么是软件测试验证软件是否满足用户的需求(软件需求来源于用户需求)二、软件测试和研发的区别?1、测试和调试的区别目的不同–测试的任务是发现程序中的缺陷;调试的任务是定位并且解决程序中的问题。参与角色不同–测试主要是由测试人员和开发人员来执行,黑盒测试主要由测试人员完成、单元/集成测试主要是由开 发人员执行。调试由开发人员完成。执行的阶段不同–测试贯穿整个软件开发生命周期,调试一般在开发阶段。2、测试和研发的区别难易程度 开发广
2020-07-17 14:17:08
2358
原创 chatroom
聊天室项目背景:互联网早期当年2000年左右的时候,“上网”就是“聊天”的代名词“你也网上冲浪啊?”“你是GG还是MM啊?”类似于QQ中的群组在聊天室中,可以关注一些现有的频道,或者也可以新建/删除频道每个频道中都有一些具体的用户任意用户在听到中发言,其他关注了该频道的用户就能看到消息----->群聊网站的登录状态识别功能一般都是基于cookie - session 机制实现的当浏览器中登录一个账户之后,再打开新的标签页,会看到,还是以刚才的用户身份登录的。如何让多个账户同时登陆
2020-07-16 23:37:35
632
原创 Book-System项目
图书管理系统项目目标复习数据库相关知识:数据库设计、基本CRUD操作,关联查询操作,JDBC操作复习Servlet处理HTTP请求复习HTTP相关知识:请求方法、响应状态码、数据类型等学习项目开发流程开发环境与技术栈Windows/Mac/LinuxMavenServletMySQLJackson项目功能主要业务:管理学校图书信息,记录并管理学生借阅图书信息用户注册(可屏蔽不实现)用户登录、会话管理用户信息管理(可不实现)班级信息管理(可不实现)学生信息管理(可
2020-07-11 00:29:40
365
原创 Servlet
1.1、Servlet简介Servlet就是sun公司开发动态web的一门技术Sun在这些API中提供一个接口叫做:Servlet,如果你想开发一个Servlet程序,只需要完成两个小步骤:编写一个类,实现Servlet接口把开发好的Java类部署到web服务器中。把实现了Servlet接口的Java程序叫做,Servlet1.2、HelloServletSerlvet接口Sun公司有两个默认的实现类:HttpServlet,GenericServlet构建一个普通的Maven
2020-07-01 16:32:46
144
原创 Linux学习
走进Linux系统开机登录开机会启动许多程序。它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。开机成功后,它会显示一个文本登录界面,这个界面就是我们经常看到的登录界面,在这个登录界面中会提示用户输入用户名,而用户输入的用户将作为参数传给login程序来验证用户的身份,密码是不显示的,输完回车即可!一般来说,用户的登录方式有三种:命令行登录ssh登录图形界面登录最高权限账户为 root,可以操作一切!关机在linux领域内大多用在服务器上
2020-06-26 14:13:57
543
原创 单例模式,工厂模式
单例模式单例模式(Singleton Pattern)是Java中最简单的设计模式,是一种创建型模式,它提供了一种创建对象的最佳方式,这种模式涉及到一个单一的类来创建对象,同时确保只有一个对象被创建。这个类提供了访问其唯一对象的方式,可以直接访问,不需要实例化该类的对象。注意:1、单例类只能有一个实例对象2、单例类必须自己创建自己的唯一实例3、单例类必须给其他对象提供该实例饿汉式线程安全,比较常用,但容易产生垃圾,因为一开始就初始化,没有加锁,执行效率会提高。public class Sin
2020-06-25 00:44:51
138
原创 多线程基础部分
2、线程、进程、多线程:程序、进程、线程的关系程序是静态的,程序跑起来成为进程,进程是系统分配资源的单位,进程包含若干个线程,一个进程至少包含一个线程,否则没有存在的意义一个进程内的线程之间是可以共享资源的。线程:线程也存在并发、并行(单个CPU时间片轮转、一个时间点,多个CPU上的真同时)一些概念:线程就是独立的执行路径在程序运行时,即使没有自己创建线程,后台也会有多个线程,如主线程、GC线程;main()称之为主线程,是系统的入口,用于执行整个程序;在一个进程中,如果开辟了多个线程,线
2020-06-18 14:53:11
200
原创 JVM体系结构,类加载器,Native,JVM分区,OOM,GC算法等
父类静态变量,父类静态代码块,子类静态变量,子类静态代码,父类构造方法,父类的实例变量,子类的构造方法,子类的实例变量
2020-06-16 17:33:00
309
原创 网络
网络学习目标:能够理解并口头表达学习方法:写博客重点知识:网络分层:OSI七层模型(了解)、TCP/IP四层或五层模型,每一层的代表协议,硬件,技术网络传输层:网络互连(了解),局域网(了解),广域网重点协议:(1)TCP/UDP:掌握特性、原理和流程(2)HTTP:掌握协议的格式,及某些细节上的作用(3)其他的重要协议(在网络传输流程中使用到):ADR/RARP、DNS、NAT、...
2020-06-15 16:41:35
188
原创 Map、Set、二叉搜索树及哈希冲突解决
Map和Set:作用------用来帮助用户进行搜索的容器 || 数据结构查找方式:1、顺序查找:----->O(N)2、二分查找:----->要求:序列必须是有序的----->O(logN)静态类型查找:查找的过程中,不会再改变数据的结构----->不会再插入和删除Map和Set:动态查找Map和Set:存储元素的类型:Map:1、Map是一个接口,没有继...
2020-06-13 16:41:32
362
原创 MySQL总结
1、数据库的介绍数据库是做什么的?1、数据查询和管理(检索)2、利于存储数据3、利于管理和控制4、进行安全控制(权限控制)数据库的分类:关系型数据库(RDBMS)Relational Database Management System(关系在数据库中就是二维表,关系数据库就是二维表组成的数据组织)关系型数据库有表(table)组成,表是由属性(Attribute)(列 Co...
2020-06-13 16:35:12
116
原创 Java代码练习2
day29年会抽奖思路:年会抽奖import java.util.Scanner;public class Main{ public static float fac(int n){ if(n == 0) return 1; return n * fac(n - 1); } public static flo...
2020-05-12 12:57:33
697
原创 剑指offer67题
构建乘积数组给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…*A[i-1]A[i+1]…*A[n-1]。不能使用除法。(注意:规定B[0] = A[1] * A[2] * … * A[n-1],B[n-1] = A[0] * A[1] * … * A[n-2];)思路:分别计算下三角连乘和上三角连乘import jav...
2020-05-02 12:07:19
331
原创 七大排序总结
排序的概念:排序的稳定性:两个相等的数据,如果经过排序后,排序算法能保证其相对位置不发生变化,则我们称该算法是具备稳定性的排序算法,否则不稳定。内部排序和外部排序:如果一次性可以将所有数据加载到内存中进行排序----->内部排序(100亿个整形数据(4个字节)占多大的空间?)(10000000000 * 4)个字节 ÷ 1024 ÷ 1024 ÷ 1024 约等于 37 ...
2020-04-09 21:06:53
221
原创 JAVA代码练习
day01import java.util.Scanner;public class day01Main { public static boolean isReverse(String s){ int left = 0; int right = s.length() - 1; while(left < right){ ...
2020-03-29 23:13:47
1065
原创 代码练习心得
day01static 关键字1、修饰属性Java静态属性和类相关, 和具体的实例无关. 换句话说, 同一个类的不同实例共用同一个静态属性2、修饰方法如果在任何方法上应用 static 关键字,此方法称为静态方法。静态方法属于类,而不属于类的对象。可以直接调用静态方法,而无需创建类的实例。静态方法可以访问静态数据成员,并可以更改静态数据成员的值注意事项1: 静态方法和实例无关, ...
2020-03-29 10:28:40
399
原创 线程池的实现
package lesson7;/* * @Program:Java13 * @Description:description * @Author:Pufang * @Time:2020-03-29 09-36-45 **/import java.util.concurrent.*;public class ThreadPoolExecutorTest { public...
2020-03-29 10:26:22
123
原创 多线程----线程安全
整理关于线程安全的相关代码及问题,后续补全public class UnsafeThread { private static final int NUM = 20; private static final int COUNT = 10000; private static int SUM;//int数据类型,如果值处于-128~127时,存在常量池中,如果超出范围,处...
2020-03-11 21:43:23
110
原创 身份证有效验证
一、实验目的(1) 掌握异常处理程序的编写方法(2) 掌握字符的处理方法(3) 掌握数组的使用方法二、实验内容(1)编写应用程序,输入18位身份证号,判断输入的身份证号是否有效。(2)当输入的身份证号前17位出现位数不足或不全是数字时,抛出自定义异常。程序捕获该异常,并提示用户错误信息,要求用户重新输入。(3)用户验证完后,提示用户重复输入身份证号码进行新的验证。或者用户可以输入退出...
2020-01-13 16:00:16
1050
原创 Java内部类
内部类分为实例内部类、静态内部类、匿名内部类、本地内部类实例内部类1、实例内部类不能有静态的数据成员2、如何拿到内部类的对象3、面试问题:实例内部类是否拥有外层对象/是否有额外的开销静态内部类在内部类名前面加了一个static就是静态内部类不能直接访问在外部类中的非静态数据成员,不能直接外部类点上内部类,因为静态内部类不依赖于对象,但是可以间接访问看下面的代码:/** * 内...
2019-12-01 22:24:20
125
原创 Java异常
异常1、了解异常的背景认识异常在以前,我们已经认识了一些异常了例如:除以0System.out.println(10 / 0);// 执行结果Exception in thread "main" java.lang.ArithmeticException: / by zero数组下标越界int[] arr = {1, 2, 3};System.out.println(arr...
2019-12-01 22:09:05
165
原创 Java中的String类
认识 String 类1、创建字符串// 方式一String str = "Hello Bit";// 方式二String str2 = new String("Hello Bit");// 方式三char[] array = {'a', 'b', 'c'};String str3 = new String(array);此外,在官方文档上还有其他常用构造方法用法,如下面的:...
2019-11-28 13:00:01
307
原创 Java面向对象编程总结
1、 包1.1 包 (package) 是组织类的一种方式。包可以理解为其实就是文件夹(文件目录)。1.2 包的命名:通常会用公司的域名的颠倒形式。包名要和代码路径相匹配. 例如创建 com.bit.demo1 的包, 那么会存在一个对应的路径 com/bit/demo1 来存储代码1.3 常见系统包:java.lang:系统常用基础类(String、Object),此包从JDK1.1...
2019-11-26 09:25:06
259
原创 顺序表和链表(包括双向链表)代码总结
顺序表的实现:public class MyArrayList { public int usedSize; public int[] elem; public final int CAPACITY = 10; public MyArrayList() { this.usedSize = 0; this.elem = new i...
2019-11-09 13:11:09
216
原创 复制带随机指针的链表(深拷贝)
题目来源:LeetCode(力扣)给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。要求返回这个链表的深拷贝。思路:分三步走,首先,将新老链表相互间隔的串为一个链表;然后,处理random指针域;最后,将老新链表拆开,并返回对应的链表头结点。/*// Definition for a Node.class Node { public ...
2019-11-06 20:38:09
558
原创 Java数组总结
arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
2019-10-21 18:19:56
281
原创 青蛙跳台阶问题
青蛙跳台阶问题,说的是一个青蛙一次可以跳一个台阶或两个台阶,问我们最终跳到n台阶时共有多少种可能性?我们先考虑这个问题的结束条件,即最后只剩下1个或2个台阶时,递归可以结束。青蛙一次可以跳1台阶或2台阶,则总共有台阶n的可能性 可以由每次-1和-2的可能性函数关系列出,即f(n) = f(n - 1) + f(n -2);import java.util.Scanner;public cl...
2019-10-15 11:25:21
239
原创 Java中实现swap()交换两个int类型变量的值
由于Java中没有所谓的指针和引用的概念,并且Java中所有的传递都是值传递,所以以前在C中使用的方法无效,在Java中可以用数组来实现,如下:public class Test { public static int[] swap(int a,int b){ int temp = a; a = b; b = temp; ...
2019-10-09 19:23:51
1806
原创 从前序与中序(中序与后序)遍历序列构造二叉树
题目来源:LeetCode根据一棵树的前序遍历与中序遍历构造二叉树。/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; ...
2019-09-17 23:54:03
136
原创 三数之和
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/3sum给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。解题思路:对数组由小到大排序,然后固定一个数nums[ i ],再分别使用左...
2019-09-17 10:44:54
159
原创 二叉树的前中后序遍历
题目来源:LeetCode二叉树的前序遍历二叉树前序遍历 public List<Integer> preorderTraversal(TreeNode root) { if(root == null){ return new ArrayList<>(); } List<Integer>...
2019-09-14 17:18:31
225
原创 二叉树的基本实现以及前中后遍历过程
public class BinaryTree { private static class Node{ private char val; private Node left = null; private Node right = null; private Node(char val){ this...
2019-09-14 17:13:01
228
原创 二叉树的基本概念及性质
二叉树的基本概念二叉树的五条性质:图文来源:学堂在线:《数据结构与算法设计》张小艳老师以上图文为在复习数据结构与算法时整理的笔记,侵删...
2019-08-14 13:00:25
291
原创 用数组简单实现栈(stack)的基本操作
import java.util.Arrays;//用数组实现栈public class Stack { private int[] array; private int top; public Stack(int defaultCapacity){ array = new int[defaultCapacity]; top = 0;...
2019-08-11 23:20:50
404
原创 环形链表
给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。题目来源:力扣思路:先用快慢指针法判断链表是否有环,求出快慢指针相遇点,再想办法求出入环点。 public ListNode detectCycle(ListNode head) { //思路:快慢指针法 ListNode slow = head; ListNod...
2019-08-07 18:51:58
97
原创 相交链表
编写一个程序,找到两个单链表相交的起始节点。题目来源:LeetCode暴力求解法,代码写的比较挫public ListNode getIntersectionNode(ListNode headA, ListNode headB) { //计算两个链表的长度,并求差值 ListNode l1 = headA; ListNode l2 = he...
2019-08-07 14:02:55
85
原创 链表的回文结构
判断一个链表是否是回文结构,返回 true 或者 false思路是快慢指针和反转链表(后半部分),再进行比较题目来源:牛客网import java.util.*;/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val;...
2019-08-07 12:43:25
107
原创 合并两个有序链表
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。输入:1->2->4, 1->3->4输出:1->1->2->3->4->4题目来源:LeetCode public ListNode mergeTwoLists(ListNode l1, ListNode l2) { ListNode...
2019-08-06 17:32:10
90
原创 链表中倒数第k个结点
题目来源:牛客网(NowCoder)输入一个链表,输出该链表中倒数第k个结点。 public ListNode FindKthToTail(ListNode head,int k) { ListNode node = head; int len = 0; for (; head != null; head = head.next) { ...
2019-08-06 13:17:00
89
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人