随笔分类 -  Big Data

摘要:在socket通信中使用多线程,主要为了解决当某个socket出现通信异常时候,导致通信阻塞,整个socket无法正常运行,处于等待状态,有了多线程,那么每个socket之间则可以独立运行,互不干扰。 以下是一个具体实现案例 客户端:ClientDemo.java 服务端代码主方法:ServerDe 阅读全文
posted @ 2020-01-04 20:29 OLIVER_QIN 阅读(366) 评论(0) 推荐(0) 编辑
摘要:所谓的多线程就像小吃街卖铜锅米线的老板,老板就好比一个操作系统,如果5个顾客同时去买米线,那么,此时老板就会同时准备好5个铜锅,然后同时放上水、调料、米线,同时煮5个人的米线,如果逐个煮的话,那么估计煮了2个人的米线,后面3人就来找老板退款了。 官方解释:多线程(英语:multithreading) 阅读全文
posted @ 2020-01-04 17:33 OLIVER_QIN 阅读(211) 评论(0) 推荐(0) 编辑
摘要:socket主要用于进行计算机之间进行通信,分为服务端与客户端。服务端启动后,处于监听端口等待状态,当客户端向服务端指定端口发送数据后,服务端收到数据后才会关闭连接。 以下是一个socket编程有浅到深逐渐递增难度的案例 一、最简单的scoket案例(单次发送与接收) 1.逐个接受字符 服务端:Se 阅读全文
posted @ 2020-01-04 16:46 OLIVER_QIN 阅读(222) 评论(0) 推荐(0) 编辑
摘要:Java中的常量通常指的是一个固定的值 在Java中主要利用关键字final来定义一个常量,常量一旦被初始化后不能再更改其值 static的关键字表示:不创建对象也能调用static修饰的属性、方法等。static跟具体对象无关; 通常定义一个常量来存储常量,例如:在项目中使用一个公共路径的时候,则 阅读全文
posted @ 2020-01-01 23:44 OLIVER_QIN 阅读(219) 评论(0) 推荐(0) 编辑
摘要:在【BigData】Java基础_反射中只是对对象实现了反射,但是在我们实际的编程中,一个类中可能会存在很多个方法,那么当我们的方法没写好的时候,我们调用的时候就会受到牵制,所以与类一致,方法上也可以使用反射,这样就可以一劳永逸。 代码实现 说明:执行以上方法需要使用Run as -->>Run c 阅读全文
posted @ 2019-12-29 16:38 OLIVER_QIN 阅读(203) 评论(0) 推荐(0) 编辑
摘要:1.反射是什么? 比较官方点的解释 Java反射机制是在运行状态中 对于任意一个类,都能知道这个类的所以属性和方法; 对于任何一个对象,都能够调用它的任何一个方法和属性; 这样动态获取新的以及动态调用对象方法的功能就叫做反射 个人理解: 反射也是自己看了教程以后发现比较有趣的一个东西,此处写的是个人 阅读全文
posted @ 2019-12-29 15:42 OLIVER_QIN 阅读(188) 评论(0) 推荐(0) 编辑
摘要:从上图我们可以看出,这就是一个继承,动物类是父类,猫、狼、狗可以继承父类的某些属性,例如: 动物类以下属性: 眼睛 耳朵 鼻子 狼、猫、狗特有属性为其叫声 那么下面用Java代码来实现描述继承 代码 package cn.test.logan.day10; /** * 父类 动物类 * @autho 阅读全文
posted @ 2019-12-29 12:18 OLIVER_QIN 阅读(158) 评论(0) 推荐(0) 编辑
摘要:概念 在我们写程序的时候,当遇到异常,整个程序就中断了,导致程序奔溃,这就会影响用户体验度,为了让程序在运行的的过程中不出现这种问题,当程序报错时候,我们把这种错误先自行处理了,让程序保持正常运行。 例如:一个求商的程序,除数是用户输入,那么用户输入的除数可能是千奇百怪的,可能是数字,也可能是字符, 阅读全文
posted @ 2019-12-29 11:45 OLIVER_QIN 阅读(180) 评论(0) 推荐(0) 编辑
摘要:简介 DataOutputStream是一个包装流,他可以将各种数据类型的数据再内部转称bytes字节,然后利用FileOutputStream写入文件中,DataInputStream读取文件内容的原理与之类似。 以下是一个使用DataOutputStream将对象写入文件,并且从文件中读取内容的 阅读全文
posted @ 2019-12-29 08:51 OLIVER_QIN 阅读(272) 评论(0) 推荐(0) 编辑
摘要:知识点 1.通过FileOutputStream是将数据先转化为二进制数据,然后再写入到文本文件 2.BufferedWriter可以更加简便的将数据写入文本文件。 3.其中的true参数表示追加,无该参数表示覆盖。 代码 我们可以通过FileOutputStream基础类将字符转化为二进制,然后写 阅读全文
posted @ 2019-12-28 11:11 OLIVER_QIN 阅读(1105) 评论(0) 推荐(0) 编辑
摘要:需求 从test.txt文件中读取内容,并且统计每个单词在文件中出现的次数,文件内容如下: 实现代码 实现逻辑: ①先使用BufferedReader读取文件中的内容 ②将读取到的内容存储到数组中,并且根据分隔符将单词分隔 ③在HashMap中进行统计个数 阅读全文
posted @ 2019-12-28 10:14 OLIVER_QIN 阅读(2046) 评论(0) 推荐(1) 编辑
摘要:概念描述 知识点1:FileInputStream是按照一个一个字节去文件中读取数据的 知识点2:当文件中的数据被读取完毕之后,再次读取,则返回的是-1 知识点3:读取出来的字节可以通过char进行ascII码转换 代码部分 test.txt的文件内容如下: 在以下代码中,为手动去读取一次字节,每r 阅读全文
posted @ 2019-12-28 00:08 OLIVER_QIN 阅读(645) 评论(0) 推荐(0) 编辑
摘要:简介 File工具类可以实现创建文件或者文件夹,并对文件或者文件夹进行管理操作。 代码 代码中实现的是File工具类的常用方法 阅读全文
posted @ 2019-12-26 23:09 OLIVER_QIN 阅读(269) 评论(0) 推荐(0) 编辑
摘要:简介 实现一个通用排序工具类,根据用户所选择的排序对象进行排序;例如通过年龄排序、通过工资排序、或者工资相等的情况下使用年龄排序 代码实现 代码结构图: package cn.test.logan.day08; import java.util.ArrayList; public class Sor 阅读全文
posted @ 2019-12-25 22:49 OLIVER_QIN 阅读(324) 评论(0) 推荐(0) 编辑
摘要:需求描述 实现简单的登录注册功能,要求以下几点: 1.注册时对两次输入的密码进行验证 2.检查注册的用户名是否已经存在 代码实现 代码结构图: package cn.test.logan.day07.login; import java.util.Scanner; import cn.test.lo 阅读全文
posted @ 2019-12-24 23:24 OLIVER_QIN 阅读(466) 评论(0) 推荐(0) 编辑
摘要:接口概念 Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。 以下是个人理解: 在软件开发过程中,当我们开发一个大型项目的时候,可能很多人一起共同开发一个项目,但是整个项目分为 阅读全文
posted @ 2019-12-23 21:44 OLIVER_QIN 阅读(240) 评论(0) 推荐(0) 编辑
摘要:需求描述 在使用Eclipse的时候,每次new一个对象,写起来比较麻烦,以下是配置Eclipse,然后使用快捷键补全new方法的步骤,此配置使用官方属于叫做:配置自动分配局部变量 配置步骤 打开Window >>Preferences,出现以下界面 修改前 修改后 阅读全文
posted @ 2019-12-21 17:25 OLIVER_QIN 阅读(686) 评论(0) 推荐(0) 编辑
摘要:HashSet简介 HashSet是一个集合数据类型,具有以下三个特性: (1)可以存储过个数据对象 (2)HashSet中的数据不能重复 (3)HashSet的数据存储是无序的 HashSet的几个常用方法如下: (1)add:添加元素到集合中 (2)size:获取集合的长度 (3)remove: 阅读全文
posted @ 2019-12-21 13:35 OLIVER_QIN 阅读(244) 评论(0) 推荐(0) 编辑
摘要:HashMap简介 HashMap是一种非常常见、方便和有用的集合,是一种键值对(K-V)形式的存储结构 常见的方法如下: put:将数据添加到集合中 get:获取集合中的元素 size:获取集合的长度 remove:移除集合中的键值对 containsKey:判断指定的key是否存在 实战演练 1 阅读全文
posted @ 2019-12-21 13:13 OLIVER_QIN 阅读(181) 评论(0) 推荐(0) 编辑
摘要:语法 switch语句是这样工作的: switch中的表达式求值一次。 将表达式的值与每个case的值进行比较。 如果匹配,则执行相关联的代码块。 break和default关键字是可选的 实战案例 package cn.test.logan.day05; import java.util.Scan 阅读全文
posted @ 2019-12-19 21:58 OLIVER_QIN 阅读(291) 评论(0) 推荐(0) 编辑