自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 计算机网络-数据链路层的三个基本问题

主机之间交换数据就是应用层和应用层之间的通讯,需要将数据进行封装,在传输层进行分段,在网络层加上网络地址,在数据链路层加上MAC地址,封装成帧,然后在物理层上进行比特流的传输,到路由器接收到比特流后,先判断数据链路层,再看数据帧的网络层地址,再次重新封装传送,最后到达目的地的应用程序。数据链路层的三个基本问题:封装成帧、透明传输、差错控制数据链路层使用的信道主要是俩种:点对点信道、广播信道。点对点信道: 使用一对一的点对点的通信方式。广播信道: 使用一对多的广播通信方式,因此过程较复杂。广播信道上

2022-05-23 17:39:10 419

原创 计算机网络-物理层

物理层物理层基本概念: 物理层解决如何在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。物理层的主要任务描述为:确定与传输媒体的接口的一些特性。即:机械特性:例如接口形状,大小,引线数目电气特性:例如规定电压范围(-5V到+5V)功能特性:例如规定-5V表示0,+5V表示1过程特性:规定建立连接时各个相关部件的工作步骤数据通讯:通信的目的是传送消息数据(data)-- 运送消息的实体信号(signal)-- 数据的电器或电磁的表现“模拟信号”-- 代表消息的参数的取值

2022-04-28 16:27:18 538

原创 计算机网络的体系结构

计算机网络的体系结构OSI七层模型: 从下往上依次是物理层(Physical)、数据链路层(Data Link)、网络层(Network)、传输层(Transport)、会话层(Session)、表示层(Presentation)、应用层(Application)。分层后,变的标准化,且降低了每一层之间的影响。应用层: 能够产生网络流量能够和用户交互的应用程序(例如聊天交友软件QQ、微信等)。表示层: 在数据通信时需要考虑数据是否要加密、压缩等,或者可视化界面显示是否乱码。会话层: 服务端和客户端建

2022-04-18 11:37:33 3847

原创 计算机网络性能指标

计算机网络性能指标:速率、带宽、吞吐量、时延、时延带宽积、往返时间、利用率速率: 连接在计算机网络上的主机在数字信道上传送数据位数的速率。单位是b/s,kb/s,Mb/s,Gb/s。带宽: 数据通信领域中(网卡或网络设备),数字信道所能传送的最高数据率。吞吐量: 单位时间内通过某个网络的数据量。时延: 发送时延、传播时延、处理时延、排队时延。- - 发送时延:一个数据包从计算机准备到将数据包发送出去的时间。发送时延 = 数据块长度(比特)/信道带宽(比特/秒)- - 传播时延:数据包从一个计算

2022-03-30 10:20:34 2704

原创 计算机网络-网络作用范围及拓扑结构

计算机网络的作用范围及拓扑结构

2022-03-24 16:21:34 1338

原创 计算机网络三种数据交换方式

三种数据交换方式:电路交换、报文交换、分组交换。电路交换: 典型应用就是打电话,交换机将两个需要通信的电话申请建立连接(申请占用通道资源)->通话(占用通信资源)->通话后释放连接(释放通信资源)。电路交换适合于数据量很大的实时性传输。报文交换: 因为不做分组,所以报文比分组长很多,报文交换的时延也比较长。分组交换: 传输一个报文时,将报文分成几段,每一段都会附上首部写上地址,然后开始发送,接收端接收到以后去掉首部将几段报文合成一个完整的报文。报文在通过路由器传输的过程中线路不固定,

2022-03-18 10:10:57 9875

原创 程序的三种基本结构

结构化程序设计主要强调某个功能实现的算法,而算法的实现过程是由一系列操作组成的,这些操作之间的执行次序就是程序的控制结构。任何简单或复杂的算法都可以由顺序结构、选择结构、循环结构这三种基本结构组合而成,所以这三种结构就是程序设计的基本结构,也是结构化程序设计必须采用的结构。顺序结构:顺序结构表示程序中的各操作是按照它们在源码中的排列顺序依次执行的,其流程如图所示。...

2020-08-10 14:04:04 21435 1

原创 Java垃圾回收机制

一些传统的C/C++等编程语言需要程序员自己负责回收已经分配的内存,这种显式进行垃圾回收是比较困难的,因为程序员不总是知道内存应该何时被回收。所以显式进行垃圾回收主要有俩个缺点:1.程序员忘记及时回收无用内存,从而导致内存泄漏,降低系统性能。2.程序员错误的回收程序核心类库的内存,导致系统崩溃。与这些编程语言不同的是,Java编程语言不需要程序员自己进行垃圾回收,Java程序的内存分配和回收都是由JRE在后台自动进行的。JRE会负责回收不再使用的内存,这种机制被称为垃圾回收(Garbage Colle

2020-08-07 08:46:38 461

原创 CLASSPATH环境变量概述

配置CLASSPATH环境变量的目的是在编译和运行时让JRE能找到对应的类。配置CLASSPATH环境变量需要在变量中添加一点(.),用以告诉JRE需要在当前路径下搜索Java类。而且在编译和运行时,Java程序还需要JDK的lib路径下的dt.jar和tools.jar文件中的Java类,因此还需要把这俩个文件也添加到环境变量中。综上俩点,CLASSPATH环境变量的值为:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar(其中%JAVA_HOME%

2020-08-06 10:22:02 2294

原创 记事本编写Java代码HelloWorld

编辑Java源代码可以使用任何无格式的文本编辑器,在Windows操作系统上可以使用记事本、EditPlus等程序,在Linux平台上可以使用VI工具等。编写Java程序不要使用写字板,Word等文档编辑器。这些工具是有格式的编辑器,在使用这些编辑器编辑文档时,文档中会包含一些隐藏的格式化字符,隐藏字符会导致程序无法正常编译运行。在记事本中新建一个文本文件。文本文件命名为:HelloWorld.java并输入以下代码:public class HelloWorld{ //Java程序的入口方法

2020-08-06 09:21:05 1718

原创 JDK安装及其目录介绍

使用Java SE 下载标准的JDK即可,到官网下载Java SE Development Kit的最新版本,根据自己的平台选择合适的JDK版本。下载后双击运行,在组件选择窗口会有三个选项,Development Tools、Source Code、Public JRE。Development Tools:这是JDK的核心,包括编译Java程序必须的命令工具。实际上这个选项里已经包含了运行Java程序的JRE,这个JRE会安装在JDK安装目录的子目录里。Source Code:安装这个选项将会安装Ja

2020-08-03 16:55:14 2385

原创 Java程序运行机制

计算机高级语言按程序的执行方式可以分为编译型和解释型俩种。编译型语言:编译型语言是指使用编译器,针对特定的操作系统将某种高级语言源代码“翻译”成该平台硬件执行的机器码,并包装成该平台所能识别的可执行性程序的格式,这个转换过程称为编译。编译生成的可执行性程序可以脱离开发环境,在特定的平台上独立运行。解释型语言:解释型语言是指使用解释器对源程序逐行解释成特定平台的机器码并立即执行的语言。解释型语言通常不会进行整体性的编译和链接处理,解释型语言相当于把编译型语言中的编译和解释的过程混合到一起同时完成。可

2020-08-03 15:36:43 202

原创 Android中Service概述

Service能够在后台长时间运行,并且没有用户界面的应用程序组件。Service按启动方式可以分为Started Service和Bound Service。Started Service:调用startService()方法来启动的Service,通过这个方法运行应用的时候服务并没有启动,当应用程序组件调用这个startService()方法时才启动。Bound Service:调用b...

2020-04-07 12:45:31 272

原创 Android中Handler消息处理概述

Handler消息传递机制:Handler是Android中提供的一个消息处理机制。在任意线程中发送消息,在主线程中获取并处理消息。进程:一个Android应用就是一个进程,每个应用在各自的进程中运行。线程:比进程更小的独立运行的基本单位,一个进程可以包含多个线程。在Android中线程是不安全的,子线程不允许操作主线程中的组件,可以通过Handler实现。通过匿名内部类实例化一个Han...

2020-04-06 20:06:47 222

原创 Android中的数据存储

在Android中有四种存储数据的方式:SharedPreferences、文件存储(内部存储、外部存储)、数据库存储、数据共享(Content Provider)SharedPreferences:是Android提供的,用来以最简单的方式对数据进行永久保存的方法。SharePreferences存储的数据是以xml文件的格式进行存储的,这个文件的位置在Android手机系统的data目录下...

2020-04-05 23:22:24 265

原创 Android的消息、通知和广播概述

在Android中系统使用四种方法来完成消息的展示:1.通过Toast显示消息提示框:特点:没有控制按钮、不会获得焦点、过一会儿会自动消失。步骤:先创建Toast对象,可以通过构造方法或者makeText()方法。(一般使用makeText()方法直接指定显示的内容和持续的时间)然后设置消息提示的样式,最后调用show()方法来显示这个消息提示框。2.使用AlertDialog实现对话框...

2020-04-03 12:04:42 682

原创 Android应用的资源概述

Android将常用的资源统一放置到res目录下。资源包括:字符串资源、颜色资源、尺寸资源、布局资源、数组资源、图像资源(drawable资源、mipmap资源)、主题和样式资源、菜单资源(选项菜单、上下文菜单)字符串资源:日常生活中的文字、数字、字母、符号都可以是字符串,用来保存这些信息的就是字符串资源。要使用字符串资源首先要定义字符串资源文件,然后才可以使用字符串资源。定义字符串资源...

2020-04-02 13:08:10 579

原创 Android事件处理概述

在Android中有俩种事件处理方式:基于监听的事件处理、基于回调的事件处理基于监听的事件处理:主要是为UI组件绑定特定的事件监听器。在事件监听的处理模型中主要有三类对象:1.事件监听器:主要用于监听事件源所发生的的事件,并对不同的事件作出相应的响应。2.事件源:即事件产生的来源,一般情况下是指各种组件。3.事件:在事件中封装了UI组件上发生的特定事件的具体信息,如果监听器要获取这个UI组件上...

2020-03-30 17:52:50 304

原创 Android中Log类概述

AndroidSDK中提供了Log类,通过这个类可以记录程序运行时的记录信息。Log类继承自java.lang.Object这个类位于android.util.Log包中。Log类中通常使用五个方法:v():主要用于输出冗余日志(输出信息为黑色)d():主要用于输出调试日志(输出信息为蓝色)i():主要用于输出程序中一些说明性日志(输出信息为绿色)w():主要用于输出警告日志(输出信息...

2020-03-28 16:08:38 698

原创 AndroidIntent概述

Intent中文翻译为意图,在Android中Intent主要用于在Activity、Service、BroadCastReceiver之间通信。即Intent的主要作用就是用来实现组件之间的通信。Intent负责对应用当中的一次操作的动作、动作涉及的数据、还有附加数据来进行描述,Android会根据Intent的描述来负责找到相应的组件,再将Intent传递给调用的组件,并完成对组件的调用。...

2020-03-25 18:57:45 203

原创 AndroidFragment概述

Fragment是Android3.0中新加的概念,中文意思是碎片,和Activity相似,用于在一个Activity中描述一些行为或者是一部分用户界面。可以在多个Activity中重用这个Fragment,也可以使用多个Fragment在一个单独的Activity建立多个UI面板。Fragment的生命周期:Fragment必须被嵌入到一个Activity当中,它的生命周期直接受到他所在的这...

2020-03-25 14:30:14 275

原创 AndroidActivity概述

Activity意思是活动,在Android中是手机或者平板电脑的一屏,是Android程序中重要的组件,在一个Activity中可以添加一个或多个组件,这些组件负责具体的功能。在Activity中有四种状态:运行、暂停、停止、销毁。当处于运行状态时,在屏幕中是可以看到这个Activity,并且可以对其进行操作;当要关闭应用的时候,弹出一个询问是否关闭的对话框,这个时候属于暂停状态,Activ...

2020-03-25 13:43:07 337

原创 Android布局管理器

Android 的布局管理器用于控制组件如何摆放。常用的布局管理器RelativeLayout(相对布局管理器)、LinearLayout(线性布局管理器)、FrameLayout(帧布局管理器)、TableLayout(表格布局管理器)、AbsoluteLayout(绝对布局管理器)、GridLayout(网格布局管理器)。其中绝对布局管理器是根据组件的绝对位置进行布局,所以不利于屏幕自适应,...

2020-03-19 14:09:38 507

原创 Android Studio建立第一个项目卡在Gradle:Resolvedependencies':app:_debugCompile'

在安装好Android Studio后,新建第一个项目可能会卡在Gradle:Resolvedependencies’:app:_debugCompile’这个步骤,即使进入了Android Studio界面,也会因无法正常下载Gradle依赖而无法编译运行。原因就是无法访问到https://dl.google.com这个网站。可以到站长工具网站http://ping.chinaz.com/d...

2020-03-18 13:52:01 471

原创 C语言链表简单概述

链表:链表是一种常见的重要的数据结构,是动态的进行存储分配的一种结构。链表的组成:头指针:存放一个地址,该地址指向第一个元素。节点:用户需要的实际数据和链接节点的指针。例如://定义一个学生结构体,包括学号、成绩以及结构体指针。struct student{ int num; float score; struct student *next;}void main(){ /...

2020-03-17 14:39:05 186

原创 C语言结构体概述

在编码的过程中有时需要将不同类型的数据组合成一个有机的整体,以便于引用,类似于Java的面向对象。定义一个结构的一般形式:struct 结构名{成员列表};例如:定义一个学生的结构体(包括学号、姓名、性别、年龄、成绩、住址)struct student{ int num;//学号 char name[20];//姓名 char sex;//性别 int age...

2020-03-17 12:23:59 517

原创 C语言内存区概述

在C/C++中,内存分成5个区:堆、栈、自由存储区、全局/静态存储区和常量存储区。栈:由编译器在需要的时候分配,在不需要的时候就会自动清除的变量的存储区。里面的变量通常是局部变量、函数参数等。堆:由new分配的内存块,这些的释放编译器不会去管,由应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么程序结束后,操作系统会自动回收。自由存储区:由malloc等分配的...

2020-03-13 14:37:40 123

原创 C语言指针概述

在C语言中,指针是一种特殊的变量,它是存放地址的。指针变量前面的“*”表示该变量的类型为指针型变量。其一般形式为:类型说明符 *变量名; 假设定义一个指针变量int *i_pointer用来存放整型变量i的地址,可以通过语句i_pointer = &i;*为取值操作符(在定义时为声明变量为指针变量),&为取址操作符。例如:int i = 2020;//定义整型变量i并赋...

2020-03-13 14:18:47 307

原创 C语言函数概述

概述:一个较大的程序可以分为若干个程序模块,每一个模块来实现一个特定的功能。在高级语言中用子程序实现模块的功能,子程序由函数来完成。一个C语言可由一个主函数和若干个其他函数构成。函数间的调用关系:由主函数调用其他函数,其他函数也可以相互调用,同一个函数可以被一个或多个函数调用任意多次。注意:所有函数都是平行的,即在定义函数时是分别进行的,是互相独立的。一个函数并不从属于另一个函数,即函...

2020-03-11 13:32:41 458

原创 C语言二维数组概述

二维数组定义的一般形式:类型说明符 数组名[常量表达式][常量表达式]例如:定义一个3行4列的数组a :int a [3][4];可以将二维数组看成是一种特殊的一维数组:它的元素又是一个一维数组。例如上面数组a,可以将a看成一维数组,它有三个元素,每个元素又包含4个元素的一维数组。二维数组在概念上是二维的,但在实际的硬件存储器却是连续编址的,也就是说存储器单元是按一维线性排列的。有俩种排...

2020-03-10 13:52:09 1309

原创 C语言一维数组概述

数组的定义:在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。在C语言中,数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可以分为数值数组、字符数组、指针数组、结构数组等各种类别。注意:数组元素有序不是指元素大小顺序。一维数组的定义:在C语言中...

2020-03-08 18:16:36 542

原创 C语言循环结构概述

循环结构是程序中一种很重要的结构。其特点是在给定条件成立时,反复执行某程序段,直到条件不成立为止。给定的条件称为循环条件,反复执行的程序段称为循环体。C语言提供了多种循环语句,可以组成不同形式的循环结构。goto语句和if语句构成循环、while语句、do-while语句、for语句。1)goto语句:goto语句是一种无条件转移语句,与BASIC中的goto语句相似。格式为:goto 语句...

2020-03-06 14:50:55 1797

原创 C基本语句概述

从程序流程的角度来看,程序可以分为三种基本结构,即顺序结构、分支结构、循环结构。C基本语句介绍C程序的执行部分是由语句组成的。程序的功能也是由执行语句实现的。C语句可以分为以下五类:表达式语句、函数调用语句、控制语句、复合语句、空语句。1)表达式语句:由表达式加上分号“:”组成。其一般形式为:表达式;执行表达式语句就是计算表达式的值。2)函数调用语句:由函数名、实际参数加上分号“:”组...

2020-03-03 10:25:52 3073

原创 C语言数据类型

C语言的一些数据类型:1.基本数据类型:基本数据类型最主要的特点是其值不可以再分解为其它类型。也就是自我说明的。2.构造数据类型:构造数据类型是根据已定义的一个或多个数据类型用构造的方法来定义。也就是说一个构造类型的值可以分解成若干个“成员”或“元素”。每个“成员”都是一个基本数据类型或又是一个构造类型。在C语言中,构造类型有以下几种:·数组类型·结构体类型·共用体(联合)类型3.指...

2020-03-02 21:11:34 1496 1

原创 Java数据结构---树-二叉树

存储数据的方式:数组存储、链式存储、树结构存储。数组存储方式分析:优点:通过下标方式访问元素,速度快。对于有序数组,还可以使用二分查找提高检索速度。缺点:如果检索具体某个值,或者插入值(按一定顺序)会整体移动,效率较低。链式存储方式分析:优点:在一定程度上对数组存储方式有优化(例如:插入一个结点,只需要将插入的结点链接到链表中即可,删除效率也很好)。缺点:在进行检索时,效率任然较低,检...

2019-10-12 16:19:31 188

原创 数据结构---哈希表

哈希表属于一种数据结构,而不是一种算法。哈希表也叫散列表,是根据关键码值而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。散列表:数组和链表相结合,将链表存放到数组中。将数据存放到结点中,由结点组成链表。根据散列函数确定数据放在哪个链表中。Java代码具体实现:import java....

2019-10-10 14:59:21 417

原创 MySQL数据库查询进阶---分组查询

分组数据:group by 子句将表中的数据分成若干组分组查询的特点:分组查询中的筛选条件分为两类:数据源位置关键字分组前筛选原始表group by子句前where分组后筛选分组后的结果集group by子句后having1.分组函数做条件肯定是放在having子句中2.能用分组前筛选的,优先考虑使用分组3.group by子句支持单个字段...

2019-09-29 11:00:43 527

原创 MySQL数据库部分常见函数---分组函数

分组函数主要用作于统计使用,又称为聚合函数或统计函数或组函数分类:sum()-求和、avg()-平均值、max()-最大值、min()-最小值、count()-计算个数简单使用:sum():求某个字段的总和select sum(某字段) from 表名;avg():求某个字段的平均值select avg(某字段) from 表名;max():求某个字段的最大值select max(...

2019-09-29 09:38:38 330

原创 MySQL数据库部分常见函数---单行函数

常见函数:概念:类似于Java的方法,将一组逻辑语句封装在方法体中,对外暴露方法名。包括单行函数和分组函数。好处:隐藏了实现细节,提高代码的重用性。调用:select 函数名(实参列表) from 表;单行函数:字符函数:1.1 获取字符串字节长度length():返回的是字节数,一个字母占1字节,一个汉字占3字节select length(‘某字段’);可以通过 show va...

2019-09-27 11:30:39 525 1

原创 MySQL数据库简单的增删改查语句

创建数据库:create database 数据库名;使用数据库:use 数据库名;创建表:create table 表名 (字段1 数据类型,字段2 数据类型…);删除指定表:drop table 表名;往指定表中添加数据:insert into 表名 (字段1,字段2,…)values(值1,值2,…) 要求其中值和字段要相对应插入多条数据:insert ...

2019-09-27 09:23:05 761

空空如也

空空如也

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

TA关注的人

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