- 博客(20)
- 收藏
- 关注
原创 Java类的加载顺序
考虑这样这一题,下面的代码输出什么public class Base{ private String baseName = "base"; public Base() { callName(); } public void callName() { System. out. println(baseName...
2019-04-25 11:51:26 165
原创 Java接口
1 接口概念接口的概念与使用方法接口不是类,而是对类的一组需求描述,这些类要遵从接口描述的统一格式定义方法。例如:如果要使用Arrays.sort方法,那么对象所属的类必须实现了Comparable接口。接口不能包含成员变量,只能包含方法和常量。Java SE8之后可以在接口中提供简单方法,这些方法不能引用成员变量。实现接口的步骤如下:1)将类声明为实现给定的接口。2)对接口...
2019-04-24 17:05:48 181
原创 Java继承
1基础定义子类Java用extends表示继承,与C++的:相同。public class Manager extends Employee{}Java中,所有的继承都是公有继承,没有C++中的私有继承和保护继承。覆盖方法直接使用同名方法来覆盖父类的方法。使用super.可以指定调用父类的方法,相当于C++中使用 父类名::。//javapublic doubl...
2019-04-24 14:11:07 3171
原创 Java文本文件的读写
1 写入文本文件try { //打开文件 File wFile=new File("Foo.txt"); //创建FileWriter FileWriter writer=new FileWriter(wFile); //使用BufferedWriter加速 BufferedWriter bufferedWriter=new BufferedWriter(wr...
2019-04-17 17:07:42 377
原创 Java保存对象
1 将序列化对象写入文件一般流程://可能会产生异常try { //打开文件 FileOutputStream fileStream=new FileOutputStream("MyGame.ser"); //创建对象输出流 ObjectOutputStream oStream=new ObjectOutputStream(fileStream); //写入对象...
2019-04-17 15:21:12 2275
原创 计算机网络-应用层-远程终端协议TELNET
TELNET又称为终端仿真协议。实现的功能键就像我们熟悉的远程桌面。TELNET可以把用户的鼠标和键盘传输到远程主机上,同时有能把远程主机的屏幕画面传送回来,就像用户在操作远程计算机一样。TELNET使用TCP连接实现。由于不同的计算机和操作系统的差异,客户端和远程的命令可能有所不同,比如有的操作系统使用回车表示换行,有的则表示为换行符。因此需要一种转换方式。TELNET使用网络虚拟终端NV...
2019-03-21 19:51:15 874
原创 计算机网络-应用层-FTP文件传送协议
FTP使用的共享方式是复制整个文件,如果要存取服务器上的一个文件,必须先在本地获得一个副本,如果要修改文件,就要先修改本地的副本,再上传到服务器。总之FTP只能传送整个文件。工作原理:FTP运行时,服务器端会有两类进程,主进程和从属进程,主进程负责接受请求,从属进程负责处理不同的请求。主进程和从属进程是并发进行的。例如,在数据传输过程中,就要建立两个进程控制进程和数据传输进程,建立了两个TC...
2019-03-19 14:46:49 659
原创 计算机网络-应用层-DNS域名系统
1 简介域名系统用来方便人们把机器名字转换为IP地址,比如我输入www.baidu.com,这是一个域名,单不是ip地址,要转化成ip地址才能访问此网站。至于为什么不直接用域名来访问而要用ip地址呢,因为ip地址是固定的32位或128位,便于机器的处理,而域名往往随机性更大。域名解析为ip是互联网上的许多域名解析服务器完成的。当某个客户进程需要一个域名的ip时,就把带解析的域名放在DNS请求...
2019-03-19 11:36:44 420
原创 计算机网络-运输层-TCP运输连接管理(三次握手四次挥手)
TCP连接的建立(TCP三次握手)TCP连接的建立采用客户服务器方式。主动发起连接建立的应用京城叫做客户,被动等待连接建立的应用进程叫做服务器。TCP建立连接的过程叫做握手,握手需要在客户和服务器之间交换三个TCP报文段,所以叫“三次握手”,实际上是三报文握手,也就是一次握手交换了三个报文。假设客户为A,服务器为B,A的TCP客户进程已经打开传输控制模块TCB,等待请求连接。B的TCP客户进...
2019-03-13 22:51:30 334
原创 计算机网络-运输层-TCP拥塞控制
1 慢开始基于窗口的拥塞控制,发送方维持一个拥塞窗口cwnd,拥塞窗口的大小取决于网络的拥塞程度,并且动态变化,发送方使自己的发送窗口小于等于拥塞窗口,实现拥塞控制。拥塞窗口cwnd的变化:主机开始发送数据时,现将cwnd设置为1-4个发送方的最大报文段SMSS。每收到一个对新的报文段的确认,就把拥塞窗口增大最多一个SMSS的数值。每经过一个传输轮次,cwnd大小就加倍。为防止cwn...
2019-03-13 21:52:48 541
原创 计算机网络-网络层-内部网关协议OSPF
OSPF协议的名字是开放最短路径优先。其最主要的特征是使用分布式的链路状态协议,它的三个要点和RIP有所不同。使用洪泛法向本自治系统中的所有路由器发送信息。就是路由器向所有相邻的路由器发送信息,收到信息的路由器再将此信息发送给所有与自己相邻的路由器(除刚发送信息过来的那个路由器外)。最终本自治系统中的所有路由器都将收到此信息。发送的信息是与本路由器相邻的所有路由器的链路状态,也就是从本路由器...
2019-03-06 14:16:47 403
原创 计算机网络-网络层-RIP内部网关协议
工作原理RIP是一种基于距离向量的路由选择协议。距离向量表示从一个网络到另一个网络所经过的路由器数量,也称跳数。最大值为15,可见RIP只适用于小型互联网。RIP协议的特点:仅和相邻路由器交换信息。交换路由器自己的路由表。定时交换信息。距离向量算法路由器对每一个相邻路由器发来的RIP报文进行如下操作:对地址X发来的报文中的每一项进行修改,将下一跳地址改为X,距离+1。对报文...
2019-03-06 09:23:04 477
原创 计算机网络-网络层-ICMP网际控制协议
ICMP报文主要是进行差错报告和询问报文ICMP差错报告主要分四种:终点不可达时间超过,IP数据报生存时间为0参数问题 ,收到的数据报首部有字段不正确改变路由(重定向),有更好的路由转发路径ICMP询问报文有两种:回送请求和回答,向一个特定的主机发送询问,用于了解目的是否可到达,及其有关状态。目的主机回答ICMP报文。时间戳请求和回答,请求某台主机回答当前的日期和事件,回答报...
2019-03-05 17:06:26 254
原创 计算机网络-网络层-IP数据报分组转发算法
分组转发算法是对于路由器而言的,因为转发工作由路由器来进行。其步骤如下:路由器收到IP数据报后,从其中提取出目的主机地址D,再从D中提取出目的网络地址N。如果N就是与此路由器直接相连的某个网络,直接交付。查看路由表,如果有目的为D的特定主机路由,交付给该路由。查看路由表,如果有到达网络N的路由,则转发给下一跳路由。如果有默认下一跳路由,转发给默认下一跳路由。报告转发分组出错。...
2019-03-05 15:39:11 2299
原创 计算机网络-网络层-地址解析协议ARP
ARP的主要作用是已知IP地址,获取其硬件地址。在IP数据报中,其头部始终记录着目的IP和源IP,但在数据链路层转发的过程中,MAC帧中记录的是下一跳硬件地址和当前硬件地址。所以需要根据目的IP地址解析出硬件地址。其原理如下:每一台主机都有其高速缓存,记录着IP地址和硬件地址的映射关系,类似于Hash表。该映射表会动态更新,即新增或超时删除。注意ARP只能解析出本局域网中IP的硬件地址,需...
2019-03-05 15:22:33 315
原创 LeetCode-3 无重复字符的最长子串 Longest Substring Without Repeating Characters
题目给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke...
2019-02-25 16:16:31 122
原创 LeetCode-2 两数相加 Add Two Numbers
题目给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -&g..
2019-02-25 14:59:01 173
原创 LeetCode-1 两数之和 Two Sum
题目给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]解答我知道,对...
2019-02-25 13:43:24 178
原创 LeetCode-49
LeetCode49,字母异位分词组题目给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”],输出:[[“ate”,“eat”,“tea”],[“nat”,“tan”],[“bat”]]说明:所有输入均为小写字母。不考虑答案输出的顺序。我...
2018-12-13 19:46:01 422
原创 C++Primer学习笔记_13.1 拷贝、赋值与销毁
C++primer学习笔记——第13章拷贝控制13.1拷贝、赋值与销毁13.1.1拷贝构造函数定义:构造函数第一个参数是自身类型的引用。任何额外参数都有默认值合成拷贝构造函数:如果没有自定义拷贝构造函数,则编译器定义一个默认拷贝构造函数。与合成默认构造函数不同,即使定义了其它构造函数,也会合成默认拷贝构造函数。合成的拷贝构造函数,将其参数的成员逐个拷贝到正在创建的对...
2018-12-13 12:48:47 187
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人