- 博客(23)
- 收藏
- 关注
原创 面试问题——TCP粘(黏)包解决方法
今天在面试过程中被问到了TCP的粘包问题,自己回答的不是很好,所以在这里总结一下这个问题。1.什么是TCP粘包发送方发送的若干数据,在接受方接受时这些数据粘在了一起(一包)。从接收缓冲区来看,后一包数据的头紧接着前一包数据的尾。 这种现象被称作TCP的粘包问题。2.发生TCP粘包的原因1.发送方发送端为了将多个发往接收端的包,更加高效的的发给接收端,于是采用了优化算法(Nagle算法),将多次间隔较小、数据量较小的数据,合并成一个数据量大的数据块,然后进行封包。而Nagle算法是造成发送方出现沾
2021-01-14 15:03:28 704
原创 动态Include和静态Include的区别
1.语法上:静态包含语法: <%@inclue file=“被包含的页面”%>动态包含语法: <jsp:include page=“被包含的页面”>2.传递参数不同:静态包含不能向被包含页面传递参数动态包含可以使用jsp:param标签向被包含页面传递参数3.原理不同静态包含:先合并再翻译、<%@ include file=“被包含的页面”%>该指令在编译之前先读入指定的页面中的内容(并不对动态内容求值),融合后的完整页面再被整体的转换为一个servlet。
2021-01-13 16:50:14 1450
原创 大数据挖掘实践——K-Means聚类算法
大数据挖掘实践K-Means聚类算法引言:有n个数据D={X1,X2,…,Xn},我们想把这些数据分成K个类。这个问题的关键在于K为多大时分类是合适的,并且我们也不好选择一个好的初始点。所以我们在这里引入距离的概念(以欧式距离为例)。我们想找到K个中心,数据离哪些中心近我们就将其定义为哪一类,同时我们的K个中心能够使这个分类最合理也就是每个点到其中心的距离的和最小。提炼为:找K个中心,数据属于距离离其最近的中心一类,这K个中心能使所有数据距离其中心的距离和最小。算法介绍:L-Means又叫做K均值
2020-07-13 15:24:19 1619
原创 网络信息安全——访问控制
** 访问控制**访问控制是给出一套方法,将系统中的所有功能标识出来,组织起来,托管起来,将所有的数据组织起来标识出来托管起来, 然后提供一个简单的唯一的接口,这个接口的一端是应用系统一端是权限引擎。权限引擎所回答的只是:谁是否对某资源具有实施 某个动作(运动、计算)的权限。返回的结果只有:有、没有、权限引擎异常了。访问控制是几乎所有系统(包括计算机系统和非计算机系统)都需要用到的 一种技术。访问控制是按用户身份及其所归属的某项定义组来限制用户对某些信息项的访问,或限制对某些控制功能的使用的一种技术。
2020-06-17 19:20:21 4214
原创 排序Ⅱ(交换排序和归并排序)
交换排序冒泡排序原理:在无序区间,通过相邻数的比较,将最大的数冒泡到无序区间的最后,持续这个过程,直到数组整体有序。实现:public static void bubbleSort(int[] array){ for(int i=0;i<array.length-1;i++){ boolean isSorted=true; for(int j=0;j<array.length-i-1;j++){ //相等不交换,确保稳定性 i
2020-05-27 21:10:03 366
原创 排序(插入排序和选择排序)
1.排序概念:2.排序的稳定性:3.内部排序和外部排序:如果一次性可以将所有的数据加载到内存中进行排序→内部排序100亿个整形数据(4个字节)外部排序排序算法:实现原理,代码实现,分析算法稳定性,时间&空间复杂度,应用场景插入排序:直接插入排序和希尔排序直接插入排序:时间复杂度:O(N^2)空间复杂度:O(1)→在排序时,没有用到辅助空间空间复杂度:一个算法在运行期间...
2020-05-02 15:20:09 656
转载 Java接口的修饰符可以为()
Java接口的修饰符可以为()A private B protected C final D abstract解析:答案:D解析:(1)接口用于描述系统对外提供的所有服务,因此接口中的成员常量和方法都必须是公开(public)类型的,确保外部使用者能访问它们;(2)接口仅仅描述系统能做什么,但不指明如何去做,所以接口中的方法都是抽象(abstract)方法;(3)接口不涉及和任何具体...
2020-04-17 15:39:04 2390
原创 Win10 localhost无法打开的解决方法(亲测)
localhost无法打开有多种原因,我的是这种:自己也搜到了好几种解决方法,以下是几个个人认为比较好的方法**1.打开控制面板–添加或删除程序,然后在左侧栏的“启用或关闭Windows功能”,把“Internet Information Services”点上。其中有个FTP服务器可以不开。点确定后就自动安装上了。再打开浏览器,输入localhost就行了**经过亲测,这个方法好像...
2020-04-03 17:10:44 61054 18
原创 牛客OJ编程题 删除公共字符
题目描述: 输入两个字符串,从第一字符串中删除第二字符串中所有的字符。例如,输入“They are students.”和"aeiou",则删除之后的第一个字符串变成”Thy r stdnts.”输入描述:每个输入测试包含两个字符串输出描述:输出删除后的字符串import java.util.Scanner;public class Main{ public static ...
2020-04-02 17:06:06 186
原创 优先级队列
1.概念+例子2.JDK:提供PriorityQueue接口使用Ⅰ. 注意:插入的元素不能为null,且元素之间必须要能够进行比较Ⅱ.插入||删除→在插入和删除元素期间,优先级队列中的元素会自定进行调整 发现:默认情况下,不论怎么调整,0号位置的元素始终是最小的Ⅲ.底层结构→堆(new出的对象在堆上,优先级队列底层结构也是堆,此处的两个堆不是同一个概念)new→堆:指的是一块具有特殊...
2020-03-23 17:55:41 386
原创 Java面向对象的一些总结
面向对象的三大特征:继承,封装,多态继承1.父类也称为基类,超类;子类也称为派生类。2.语法规则: class 子类 extends 父类 {}3.Java中一个子类只能继承一个父类(接口可以多继承),C++支持多继承。4.子类会继承父类所有的public的字段和方法,但无法访问父类的private字段和方法。5.可以使用super关键字得到父类实例的引用。6 .instanceo...
2020-03-02 17:44:13 137
原创 速学堂JAVA300集 第四章作业练习题
一.选择题1.B 编译过程中如果没有主动定义构造器,编译器就会自动生成一个无参的构造函数,如果已定义就不会自动添加2.D3.AC 静态方法中调用非静态方法要用关键字new来创建对象才可以使用,所以不能直接调用,故A对。非静态方法可以直接调用静态方法,B错。静态方法可以直接使用类名调用,格式:“类名.该静态方法名”,故C对。静态方法中不能使用this,static是静态方法,存放在...
2020-02-09 18:37:38 448
原创 this和static关键字
this关键字this的本质:“创建好的对象的地址”! 由于在构造方法调用前,对象已经创建。因此,在构造方法中也可以使用this代表**当前对象** 。this的常用方法:1. 在程序中产生二义性之处,应使用this来指明当前对象;普通方法中,this总是指向调用该方法的对象。构造方法中,this总是指向正要初始化的对象。2. 使用this关键字调用重载的构造方法,避免相同的初始化代码。...
2020-02-07 18:02:29 154
原创 面向对象,类,属性,方法
对象.面向对象具有三大特征:封装性、继承性和多态性,而面向过程没有继承性和多态性,并且面向过程的封装只是封装功能,而面向对象可以封装数据和功能。所以面向对象优势更明显。面向对象和面向过程的总结1、都是解决问题的思维方式,都是代码组织的方式。2、解决简单问题可以使用面向过程3、解决复杂问题:宏观上使用面向对象把握,微观处理上仍然是面向过程。什么是对象1.对象说白了也是一种数据结构(对数...
2020-02-06 18:00:40 840
原创 数据类型和运算符简要汇总
标识符标识符的使用规范1.表示类名的标识符:每个单词的首字母大写,如Man, GoodMan2.表示方法和变量的标识符:第一个单词小写,从第二个单词开始首字母大写,称之为“驼峰原则”,如eat(), eatFood()变量局部变量(local variable)方法或语句块内部定义的变量。生命周期是从声明位置开始到方法或语句块执行完毕为止。局部变量在使用前必须先声明,初始化(赋初值)再...
2020-01-18 17:14:30 267
原创 数组的初始化(二)
基本类型数组的初始化public class Test{public static void main(String[] args){int[] iArr;iArr=new int[1,2,3,4];}}执行int[]iArr代码后,系统会在栈中定义一个iArr数组变量,它是一个引用类型的变量,并未指向任何有效的内存,没有指向实际的数组对象。执行iArr=new...
2020-01-15 17:10:11 250
原创 数组的初始化(一)
Java数组是静态的java语言是静态语言,因此java数组也是静态的,即当数组被初始化之后,该数组的长度是不可变的。java程序中的数组必须经过初始化才能使用。所谓初始化,就是为数组对象的元素分配内存空间,并为每个数组元素分配初值。数组的初始化有以下两种方式:1.静态初始化:初始化时由程序员指定每个数组元素的初值,由系统决定数组长度。2.动态初始化:初始化时由程序员指定数组长度,由系统为...
2020-01-13 20:22:57 2362
原创 SQL SERVER和MYSQL的区别
一、SQL Server基本简介1.1,概述SQL Server 是Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2012 的大型多处理器的服务器等多种平台使用。Microsoft SQL Server 是一个全面的数据库平台,使...
2019-12-28 10:32:44 1202 1
原创 判断一个字符串是否全部由数字组成
先把字符串转换为字符数组,然后遍历这个数组,判断其中内容是否为数字。`public class Testdemo {public static void main(String[] args) {String str = “add666”;System.out.println(isNumber(str) ? “字符串完全由数字组成” : “字符串不完全由数字组成”);}public st...
2019-12-01 17:43:57 1633
原创 Java常量,变量,类型转换
```Ⅰ. 常量1.常量在声明之后只能初始化一次,之后不能再修改,在运行期间不能改变2.Java中声明常量的关键字为:final3.final可以不在定义的同时进行初始化,但是一旦被初始化之后就不能再改 变;final不仅可以修饰变量,还可以修饰函数,接口,类等等(final int x=1;)***Ⅱ.变量8种内置类型(简单类型):int short lo...
2019-11-21 21:57:09 176
原创 新的开始
我是魏晓阳,现在还是一个接触IT两年的小白,积少成多,以后的我一定也会成为一个合格的IT精英。对于IT这个专业,一开始接触时我还是有点迷茫的,可能是对新事物的一种不适应吧,但这种迷茫并没有浇灭我对IT的热情,我决心要掌握它,在IT 领域走出我自己的路。既然选择了IT这条道路,那就注定这一路不会轻松,我要用最大的专注和精力来面对我的这项“事业”,一周至少要有20个小时可以坐下来认真敲敲代码。以前的...
2019-09-05 19:57:50 105
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人