自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Netty核心原理(一)

1.Netty是由JBOSS提供的一个Java开源框架。Netty提供异步的、基于事件驱动的网络应用程序框架,用以快速开发高性能、高可靠性的网络IO程序。2.Netty是一个基于NIO的网络编程框架,使用Netty可以帮助你快速、简单的开发出一个网络应用,相当于简化和流程化了NIO的开发过程。不同的线程模式,对程序的性能有很大影响,在学习Netty线程模式之前,我们首先来了解一夏各个线程模式,最后看看Netty线程模型有什么优越性.目前存在的线程模型有。......

2022-07-19 10:45:51 1220 1

原创 Java网络编程——NIO编程

JavaNIO全称javanon-blockingIO,是指JDK提供的新API。从JDK1.4开始,Java提供了一系列改进的输入/输出的新特性,被统称为NIO(即NewIO),是同步非阻塞的.缓冲区(Buffer)缓冲区本质上是一个可以读写数据的内存块,可以理解成是一个数组,该对象提供了一组方法,可以更轻松地使用内存块,缓冲区对象内置了一些机制,能够跟踪和记录缓冲区的状态变化情况。Channel提供从网络读取数据的渠道,但是读取或写入的数据都必须经由Buffer.......

2022-07-16 11:47:31 1953

原创 Java网络编程——I/O模型

目录第一部分:I/O模型简介1. I/O 模型简单的理解2. Java 共支持 3 种网络编程模型/IO 模式3.阻塞与非阻塞4.同步和异步第二部分:BIO(同步并阻塞)1.BIO的理解2.BIO工作机制3.举个小例子4.BIO问题分析 5.DEMO 1.BIO执行流程:2.客户端(Client)3.服务端(Server)第三部分:NIO(同步非阻塞)1.NIO的理解小插曲:多路复用器1.了解Selector2.使用Selector的好处 2.工作机制3.举个小例子 4.DEMO1. NIO执行流程2.客户

2022-07-14 17:29:25 1311

原创 Java网络编程——客户端Socket

目录第一部分:使用Socket一.数据报二.socket的功能第二部分:了解SOCKET类1.socket类2.构造方法3.常用方法介绍4.DEMO:客户端和服务端通信第三部分:用Telnet研究协议一、了解Telnet二、用Socket从服务器读取1.在终端上用Telnet测试daytime服务器 2.小DEMO:Daytime协议客户端3.小DEMO:通过与time.nist.gov对话构造一个Date 4.小DEMO:时间协议客户端三、用Socket写入服务器1.了解用socket如何写入服务器2.用

2022-07-13 20:11:16 8532

原创 Java网络编程——InetAddress类

目录1.节点(NODE)2.Internet地址或IP地址3.域名系统2>详细了解InetAddress类1.创建新的InetAddress对象程序一: 显示某地址的程序 程序二:查找本地机器的地址2.InetAddress的常用方法1.小DEMO2.给定地址,找到主机名称3.找到本地机器的IP地址3>.InetAddress缓存4>.地址类型5>.测试可达性 6>.Object方法7>. Inet4Address和Inet6Address连接到Internet的设备称为节点。计算机节点称为主机每个节点或者

2022-07-13 08:55:19 3732

原创 (二)使用MySQL

目录一、连接和断开服务器1.连接2.断开连接 二、简单的查询1.查询服务器的版本号和当前日期2.取消命令三、创建和使用数据库1.使用使用该SHOW语句找出服务器上当前存在哪些数据库2.访问已有的数据库 3.创建一个数据库4.使用数据库 四、创建表1.查看数据库 2. CREATE TABLE语句来指定表格的布局3.SHOW TABLES显示创建的表4.DESCRIBE查看表中的内容 五、将数据加载到表中方法一:文本文件加载pet.txt到 pet表中方法二:使用INSERT语句每次添加一条信息 六、从表中检

2022-07-12 09:03:47 920

原创 (一)了解MySQL

目录*1 数据库基础一、什么是数据库二、表三、列和数据类型四、行五、主键*2 浅浅了解SQL*3 MySQL简介一、MySQL二、客户机——服务器软件三、MySQL工具四、mysql 命令行实用程序五、 MySQL Administrator六、 MySQL Query Browser数据库是一个以某种有组织的方式存储的数据集合。数据库(database) 保存有组织的数据的容器(通常是一个文件或一组文件)。表(table) 某种特定类型数据的结构化清单。表是一种结构化的文件,可用来存储某种特定类型的

2022-07-11 11:38:44 479

原创 抽象类和接口

一.抽象类1>.了解抽象类1.抽象类不能创建对象。抽象类可以包含抽象方法,这些方法将在具体的子类中实现。2.在继承的层次结构中,每个新的子类都使类更加明确和具体。如果从一个子类向父类追溯,类就会变得更不通用并且不明确。类的设计应该确保父类包含其子类的共同特征。有的时候呢,父类会设计的十分抽象,以至于不能用于创建任何具体的实例;这样的类就称为抽象类。2>. abstract(在类的头部使用abstract修饰符表示该类是抽象类public abstract class .

2022-05-15 07:30:00 508

原创 文本I/O

目录一、File类二、文件的输入输出1.使用PrintWrite写数据1.创建一个PrintWrite对象2.了解PrintWrite中的常用方法3.为什么要关闭文件4.使用try-with-resources自动关闭资源2.使用Scanner读取数据3.学以致用:设计一个替换文本的小程序三、小小总结1.为什么要异常处理一、File类1、File类包含了获得文件/目录的属性,以及对文件/目录进行改名和删除的方法。2、在文件系统中,每一个文件..

2022-05-12 21:29:13 392

原创 继承和多态

第一部分:父类和子类1.继承:面向对象编程支持从已经存在的类中定义一个新的类,称为继承。2.父类和子类:继承使得你可以定义一个通用的类(也就是父类),之后继承该类为一个更特殊的类(也就是子类)。3.设计一个小程序(GeometricObject、Circle、Rectangle)public class TestCircleRectangle { public static void main(String[] args){ Circle circle =

2022-04-28 19:54:53 2475

原创 Java面向对象*~*

第一部分:类的抽象和封装先来了解一些小概念类的抽象:是指将类的实现和使用分离;实现的细节被封装并且对用户隐藏,这就被称为类的封装。类的合约:从类外可以访问的公共构造方法、普通方法和数据域的集合以及对这些成员预期行为的描述,构成了类的合约。...

2022-04-21 22:50:01 1352

原创 java基础知识

首先呢,我们先来看一个简单的java程序public class Welcome{ public static void main(String[] args){ System.out.println("Welcome to java!"); }}输出:Welcome to java

2022-04-17 19:42:58 228

原创 Linux下gdb调试用法

稍微小小介绍一下gdb是GUN组织开发的Linux下的调试利器。一般用于调试C/C++程序。GDB主要有以下4个功能:1、启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。2、可让被调试的程序在你所指定的调置的断点处停住。3、当程序被停住时,可以检查此时你的程序中所发生的事。4、你可以改变你的程序,将一个BUG产生的影响修正从而测试其他BUG。下直接进入主题这是本次用来测试的代码#includ...

2022-02-09 17:41:09 9224 3

原创 关于设计一个 C 语言的动态扩容缓冲区

日月不肯迟,四时相催迫。这个项目的条条例例都是小组的学姐学长的写出来的呐(不得不感叹小组学长的智慧吖),我也只是按照要求写了每个API,写的磕磕盼盼,但是呢,学到了不少知识,现在分享个大家。先来了解了解做这个项目需要掌握什么知识叭知识点字符串。 面向对象的 C 语言设计。 动态内存分配。 Linux File API。 getline。一.首先看缓冲区类的定义struct strbuf { int len; //当前缓冲区(字符串)长度 int all..

2022-01-21 14:53:27 804

原创 西邮linux小组2019-2021面试题总结

知识点一:sizeof()和strlen()的异同先看道题我们再来总结知识点输出:16 12解析:I love Linux \0\0\0一共是15个内存,生成字符类型的时候会在后面自动补充一个'\0',所以是16strlen是以遇到的第一个'\0'为结束符,I love Linux为12个字符长度显而易见,这道题考查的是与sizeof()和strlen()相关的知识点,我们来总结一下学以致用,我们来练习一道题输出结果:26 27!!你对了吗,没有对的话...

2021-12-07 21:44:27 676 1

原创 西邮Linux兴趣小组2019纳新试题

解析:unsigned int 的取值范围是0~4294967295(2^32-1)当i减到0的时候,再一次减1就会变成4294967295,这样的话就一直满足i>=0的条件, 所以会输出无数个‘=’知识点:unsigned int:无符号整型,表示从0开始到2^32-1的所有整数,unsigned后面的int可以省略递减运算符–(顺便也把递增运算符++了解一下叭)递增递减运算符“++”和“–”是两个很特殊的运算符,它们是单目运算符,这个算子还必须是变量。这两个运算符分别.

2021-12-04 13:52:08 554

原创 宏定义#define

❀不带参数的宏定义1.宏定义指令#define:用来定义一个标识符和一个字符串,以这 个标识符来代表这个字符串,在程序中每次遇到该标识符时就用所定义的字符串替换它。2.宏定义的作用:相当于给指定的字符串起一个别名。不带参数的宏定义一般形式如下:#define 宏名 字符串#表示这是一条预处理命令。宏名是一个标识符,必须符合C语言标识符的规定。字符串可以是常数、表达式、格式字符串等。下面我们举一个例子来看看叭????例如:#define PI3.14159首先呐,该语句的作用是在

2021-11-30 13:11:54 3550 1

空空如也

空空如也

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

TA关注的人

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