自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 斯是陋室(译文:虽是个简易的聊天室)

客户端import java.io.IOException;import java.net.Socket;/** * 任务:连接服务器,处理客户端的发送和接收任务 * 类型:普通类(主类) * */public class MultiThreadClient { public static void main(String[] args) { try { ...

2019-05-20 19:58:59 494

原创 八大常见排序算法

这几天把数据结构中的八大排序算法复习了一下,今天在这里做个小总结:1.常见的排序算法2,下面分别介绍以下几种排序算法以及他们的性能比较冒泡排序 /** 1,冒泡排序 */ public static void BubbleSort(int[] arr){ for(int i=1;i<arr.length;i++) { int fl...

2019-04-12 13:17:27 163

原创 探索唐诗奥秘

具体的代码框架如图:接下来我们对每一部分的代码进行展示说明:impl包下:package com.symx.poetrytang.analyze.dao.impl;import com.symx.poetrytang.analyze.entity.PoetryInfo;import com.symx.poetrytang.analyze.model.AuthorCount;impo...

2019-08-24 07:56:37 280 1

原创 链表的常用操作

以下皆为LeetCode上的题删除链表中等于给定值 val 的所有节点/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Sol...

2019-08-21 12:09:15 2473

原创 字符界面的简易收银台小程序

今天要写一个基于字符界面的简易收银台小程序。首先来分析一下我们都需要创建哪些类。既然是收银台,那必不可少的就是货物和订单啦。因此我们首先必须将货物和订单分别抽象出一个类来,同时还需一个货物中心和商品中心分别对货物和商品进行管理。为了增加其灵活可扩展性,我们决定用接口的方式来实现货物中心和商品中心这两个类。最后我们需要一个主类来对订单中心和商品中心进行一系列的操作调度。因此我们的类结构就很清晰了。...

2019-08-02 11:31:48 573

原创 JVM学习小结

JVM 内存区域划分JVM(Java虚拟机)所管理的内存主要包含两种:线程私有区域和线程共享区域线程私有内存线程私有:由于JVM的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现,因此任何一个确定的时刻,一个处理器都只会执行一条线程中的命令,因此为了切换线程后能恢复到正确的执行位置,每条线程都需要独立的程序计数器,个线程之间互不影响,独立存储,因此这类区域就称为“线程私有”内存。线...

2019-07-30 11:03:16 134

原创 算法1---动态规划问题

动态规划其实是分治思想的延伸,通俗一点来说就是大事化小,小事化无的思想。在将大问题化解为小问题的分治过程中,保存对这些小问题已经处理好的结果,并供后面处理更大规模的问题时直接 使用这些结果2个本质:(1)状态的定义(2)状态转移方程的定义 (也就是该状态与前一个状态之间的关系)3个特点:(1)把原来的问题分解成了几个相似的子问题。(2) 所有的子问题都只需要解决一次。(3)储存子问...

2019-07-28 12:20:34 164

原创 简单认识线程池

线程池juc包下,使用线程池的优点:1)降低资源的消耗:通过重复利用已创建的线程降低线程创建与销毁带来的损耗2)提高响应速度:当新任务到达时,任务不需要等待线程创建就可以立即执行3)提高任务的可管理性:使用线程池可以统一进行线程分配,调度与监控线程池执行任务的流程:当一个Runnable或Callable对象到达线程池时,执行策略如下:1)先查看核心线程池是否已满,若未满,创建新线...

2019-06-29 08:48:52 261

原创 测试用例

今天来总结下测试用例方面的基本知识:先来说一下测试用例的基本概念测试用例:为了实施测试而向被测试的系统提供的一组集合基本要素:测试环境,操作步骤,测试数据,预期结果等评价测试用例的标准:1,用例表达准确,无二异性2,用例可操作性强3,输入与输出明确,一条用例只有一个预期结果4,可维护性好5,需求的覆盖率高6,暴露程序缺陷的能力强测试用例的好处:1,测试执行者的依据2,使得...

2019-05-29 20:42:53 543

原创 测试的分类

软件测试可以从七个方面进行划分,不同的划分方式又有不同的测试方法,具体框图如下:接下来对这七种划分方法分别简单了解一下:■ 按开发阶段划分1,单元测试:对软件组成单元进行测试。目的:检验软件基本组成单位的正确性。测试对象:软件设计的最小单位–模块。又称为模块测试测试阶段:编码后或者编码前(TDD)测试人员:白盒测试工程师或开发工程师测试依据:代码和注释+详细设计文档测试方法:白...

2019-05-23 17:49:03 579

原创 软件测试的相关基础概念

需求:满足用户期望或正式文档规定的条件和权能软件需求是测试人员进行测试工作的基本依据。Bug:当且仅当规格说明是存在的并且正确,程序与规格说明之间的不匹配才是错误。若没有需求规格说明书,判断标准以最终用户为准:当程序没有实现其最终用户合理预期的功能要求时,就是软件错误。测试用例:为实施测试而向被测试程序输入的一组组合。包括:测试环境,操作步骤,输入数据,预期结果···。软件生命周期:从软...

2019-05-09 21:10:37 219

原创 简单理解Java中的几种设计模式

今天来说一下Java中的一些常用设计模式:模板设计模式,工厂设计模式和代理模式。首先要知道,Java中的设计模式要遵循一个重要的原则:开闭原则(OCP)开闭原则(OCP): 一个软件实体如类、模块和函数应该对扩展开放、对修改关闭。一,模板设计模式二,工厂设计模式三,代理模式...

2019-04-30 21:23:14 1052

原创 CAS机制

今天来说一说Java中的CAS机制,在此之前,先了解两个概念:悲观锁和乐观锁悲观锁:线程获取锁(JDK1.6之前内建锁)是一种悲观锁的策略,假设每一次执行临界区代码(访问共享资源)都会产生冲突,所以当前线程获取到锁的同时也会阻塞其他未获取到锁的线程。乐观锁(无锁操作):假设所有线程访问共享资源是不会出现冲突,由于不会出现冲突自然就不会阻塞其他线程,因此线程就不会出现阻塞停顿的状态。当出现冲突时...

2019-04-18 21:52:15 175

原创 多线程的常用操作方法

今天来总结一下多线程中常用操作方法:1,线程的命名与取得:方法名类型描述Public Thread(Runnable target,String name)构造通过构造方法在创建线程时设置线程名称Public final String getName()普通取得线程名称Public final synchronized void setName(Str...

2019-04-17 23:40:26 231

原创 有关多线程的一些基本知识

四大并发工具:juc包下CounDownLatch–闭锁CounDownLatch对象在计数器减为0之后无法继续使用,只能使用一次,值无法还原CyclicBarrier–循环栅栏CyclicBarrier在计数器减为0后可重复使用Semaphore–信号量通过Semaphore控制同时访问的线程个数,通过acquire()来尝试获取一个资源,若没有资源就等待。通过release()释...

2019-04-16 23:06:59 145

原创 网络各分层协议的学习小结

在开始之前,我们先来看一张简单的网络各分层的结构图,以及各个不同分层之间都会用到的协议:今天就从上往下讲一下HTTP,HTTPS,UDP,TCP,IP协议具体内容以及数据包如何通过这些协议实现跨网络传输。希望通过这篇文章,大家最起码知道两点内容:(1)在各层之间如何将报头与有效载荷正确分离,(2)解包交付的时候如何知道要交给上一层的谁。在此之前先普及一些常识性的东西:1,实际上,我们程序员写...

2019-04-06 21:45:51 689

原创 Java中的集合框架学习小结

一:集合框架总体认知先来看一个图,对集合框架有一个全局的了解其中实线为继承,虚线为实现接口二:Collection类集框架1,Collection整体架构框图(1)List是有序的队列,List中可以有重复的元素;Set是集合,Set中没有重复元素!(2)AbstractCollection抽象类实现了Collection中的绝大部分函数。AbstractList和AbstractSe...

2019-04-02 11:42:14 247

原创 网络协议与网络传输的基本流程简介

1,首先来了解几个基本概念:局域网LAN: 多台计算机通过交换机和路由器连接在一起广域网WAN:将远隔千里的计算机都连接在一起。广域网和局域网是一个相对的概念计算机之间的传输媒介是光信号和电信号通过"频率"和"强弱"来表示0和1这样的信息。想要传递各种不同的信号就需要约定好双方的数据格式。2,再来看看什么是网络协议(1).“协议”:其实就是一种约定,通信的两台主机除了约定好协议,各制造...

2019-03-20 17:26:12 1131

原创 Java中的三大特殊类

今天来总结一下Java中的三大特殊类:String类, Object类, 和包装类一,String类1. String类的两种实例化方式 ★ 直接赋值 :String str = &amp;quot;Hello World&amp;quot; ; // str是一个对象,那么&amp;quot;Hello World&amp;quot; 就应该保存在堆内存中 System.out.println(str) ;★ 传统方法(构造法):String

2019-03-17 14:07:24 771 2

原创 Java中的异常体系小结

今天来说一说Java的异常与捕获,首先了解一下什么叫异常体系。异常体系:就是当程序出现错误时,能够最大化减少损失的一种手段。在Java中异常也是类。(1) 关于异常的继承关系如下图:这里注意:只有Throwable以及其子类能够进行异常捕获与处理。下面再来说一说这几种异常的不同:Error:描述JVM(Java虚拟机)运行时内部错误,如堆栈溢出的错误。Exception:这种错误是...

2019-03-16 16:04:48 197

原创 关于注释转换的代码实现

我们这次的目的是要将一个文件中的c类型的注释转换成c++的注释,那么我们首先要明白这两种注释的区别: c注释:/ * 注释内容 * / ,c注释可注释多行,从 /* 开始,到*/ 结束。 c++注释://注释内容,//后为注释内容,一次只能注释一行,遇到换行则跳出注释。 通过分析我们可知,在一个文本中可能有四种状态:正常文本内容,c注释,C++注释,文本结束 这四种状态,其之间的状态转换图可...

2018-08-08 14:26:54 252

原创 自定义类型:结构体,枚举,联合

首先先说一下c语言的数据类型,其框架类型如图所示:今天主要说一下结构体,枚举,联合这三种自定义类型。 1,结构体 1.1 结构体的声明 结构体是一些值的集合,这些值称为成员变量,结构体的每个成员可以是不同类型得变量。 (1)结构体的成员: 结构体的成员可以是标量,数组,指针,甚至是其他结构体。 (2) 结构体的声明:struct tag //struct:结构体...

2018-08-06 22:30:56 197

原创 可变参数列表的解析

首先说一下什么是可变参数: 当我们在不同时刻调用同一个函数时,有时候传的参数类型与个数都不尽相同,因此就要求该函数能接收不同类型,不同个数的参数,那么这些参数就称为可变参数。最有代表性的例子就是printf函数了。通过调用printf函数,我们可以实现整型数据的打印,字符数以及浮点数等各种类型数据的打印输出,也可同时输出不同个数的参数,那么,类似于printf函数一些拥有可变参数的...

2018-08-03 12:01:16 167

原创 浅谈数组与指针

1.数组与指针 在这里首先强调一下:数组就是数组,指针就是指针,指针和数组是完全不同的两码事。 对二者进行简单对比: 指针(1) 保存数据的地址,任何存入指针变量p的数据都会被当作地址来处理,p本身的地址由编译器另行存储,存储在哪里我们并不知道。 (2)间接访问数据,首先取得指针变量p的内容,把它作为地址,然后从这个地址提取数据或向这个地址写入数据。指针可以以指针的形式...

2018-08-01 15:55:22 169

转载 用c语言写三子棋游戏

三子棋游戏:1,头文件#define ROW 3#define COL 3#define ROWS ROW#define COLS COLvoid Init_board(char board[ROWS][COLS], int rows, int cols, char set);void print(char board[ROWS][COLS], int row, int...

2018-07-19 17:47:55 127

原创 数组的相关知识

今天来整理一些数组的相关知识1,一维数组的创建和初始化数组的创建方式: type_tarr_name[const_n]数组元素类型 数组名 常量表达式,用来指定数组大小数组创建时,[ ]中要给一个常量才可以,不能使用变量数组的初始化:在创作数组的同时给数组的内容一些合理的初始值数组的内存分配:Eg:...

2018-06-24 23:23:36 99

原创 c语言中的操作符

今天来整理一下c语言中的操作符,C语言中的操作符分为以下几类:1.算术操作符:+, -, *, /, %2.以为操作符:>>, <<3.位操作符:&,|, ^4.赋值操作符:=, +=, -=, *=, /=, %=, <<=, >>=, &=, |=, ^=, 5.单目操作符:!, +, -, &amp...

2018-06-19 17:00:47 543 2

原创 初来乍到,请多多指教

作为一个C语言初学者,不犯错误,那几乎是不可能的,所以短短几天就已经在编写代码过程中犯过很多错,但没关系,总结错误吸取教训,才能进步。下面是我这几天的一些学习总结,希望同样的错误不会再犯第二次。1,程序运行结果出现闪退。处理方法:(1),程序末尾输入 getchar( )              (2),加头文件#include&lt;stdlib.h&gt;,末尾输入 system("paus...

2018-06-08 23:32:58 341

空空如也

空空如也

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

TA关注的人

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