2022年5月12日

摘要: 创建四个类,实现双向聊天的功能。 接收线程: import java.io.IOException; import java.net.*; public class ReceiveThread implements Runnable{ private int port; public Receive 阅读全文

posted @ 2022-05-12 21:40 罗芭Remoo 阅读(64) 评论(0) 推荐(0) 编辑

摘要: UDP协议,简单的说就是,发信息。 不管对方有没有收到。 发送端: import java.net.*; public class UDP_Send { public static void main(String[] args) throws Exception { DatagramSocket 阅读全文

posted @ 2022-05-12 21:31 罗芭Remoo 阅读(47) 评论(0) 推荐(0) 编辑

摘要: InetAdress如何使用? import java.net.*; public class InetAdress { public static void main(String[] args) throws UnknownHostException { String srt = ""; Ine 阅读全文

posted @ 2022-05-12 19:39 罗芭Remoo 阅读(61) 评论(0) 推荐(0) 编辑

2022年5月11日

摘要: import java.util.Timer; import java.util.TimerTask; public class TimerClass { public static void main(String[] args) { Timer t = new Timer(); //延迟2000 阅读全文

posted @ 2022-05-11 23:43 罗芭Remoo 阅读(25) 评论(0) 推荐(0) 编辑

摘要: 平时创建线程的时候,系统会默认为线程分组。 我们可以使用 ThreadGroup tg1 = t1.getThreadGroup(); 取得t1的线程组对象。 然后使用getName获得线程组名称。 如何指定线程组呢? public Thread(ThreadGroup group, Runnabl 阅读全文

posted @ 2022-05-11 23:36 罗芭Remoo 阅读(21) 评论(0) 推荐(0) 编辑

摘要: 生活化的例子:比如说有两个人,一把刀和一把叉子; 第一个人先需要一把刀,然后还需要一把叉子; 第二个人先需要一把叉子,然后还需要一把刀。 我们理想的情况是:一个人拿着刀,然后再拿到叉子,把事情做完,然后归还刀和叉子。 第二个人先拿到叉子,再拿到刀,然后一起归还。 两两互不干扰。 但是现实的情况有可能 阅读全文

posted @ 2022-05-11 23:35 罗芭Remoo 阅读(28) 评论(0) 推荐(0) 编辑

摘要: 练习:使用两个不同的线程类实现买票系统 请创建两个不同的线程类、一个测试类以及一个票的管理类。 其中票的管理类用于储存票的数量。两个线程类看作不同的买票方式。 步骤: 1、创建所需的类 App售票线程类 public class Runnable_AppTicketSeller implements 阅读全文

posted @ 2022-05-11 23:25 罗芭Remoo 阅读(39) 评论(0) 推荐(0) 编辑

摘要: 与上一章学习的线程锁synchronized类似,都是为了解决线程安全的问题。 使用方法: 新建一个ReentrantLock对象。(如果使用Thread多线程,则需要声明static静态) 然后在需要加锁的代码块前面加如语句: lock.lock();//加锁 然后加上try catch语句。原因 阅读全文

posted @ 2022-05-11 21:32 罗芭Remoo 阅读(20) 评论(0) 推荐(0) 编辑

摘要: 杀死一只知更鸟(同名电影原著) 哈珀·李 69个笔记 第二章 “杰姆说我一生下来就认字。他读过一本书,在那本书里我姓达芬奇,而不是芬奇。杰姆说我的名字其实是琼·露易丝·达芬奇,我出生的时候被人调换了,实际上我是……” 现在我担心会失掉阅读的时光,在此之前,我从没喜欢过阅读,就像人呼吸并不是因为喜欢, 阅读全文

posted @ 2022-05-11 21:16 罗芭Remoo 阅读(475) 评论(0) 推荐(0) 编辑

摘要: 苔丝(经典译林) 托马斯·哈代 120个笔记 译序 [ jìn ruò hán chán ]像冷天的蝉那样一声不吭。形容不敢说话。出 处宋·张守《题锁树谏图后》:“尝怪士处明时;事贤主;履高位;噤如寒蝉;或至导谀以误国。”例 句杨沫《青春之歌》:“他的话完了,台下有个人拼命地鼓掌,而更多的人却~,面 阅读全文

posted @ 2022-05-11 21:08 罗芭Remoo 阅读(372) 评论(0) 推荐(0) 编辑

摘要: 线程安全问题: 简单来说,就是多个线程在操作同一个变量时引起的问题。 这里是用一个简单的例子说明一下: 以Runnable创建的线程为例:一个售票系统,count代表当前票数,卖出一张count--。 Runnable线程类: public class Runnable_Exp implements 阅读全文

posted @ 2022-05-11 19:59 罗芭Remoo 阅读(41) 评论(0) 推荐(0) 编辑

摘要: 两种方法: 1、创建一个继承自Thread的线程类,然后再main(不限)中构造这个线程类对象。方法在之前讲过。 2、创建一个使用Runnable接口的线程类,然后在main(不限)中构造这个Runnable线程类,再通过构造Thread类,把线程类传入即可。 实例: 线程类(使用Runnable接 阅读全文

posted @ 2022-05-11 15:57 罗芭Remoo 阅读(135) 评论(0) 推荐(0) 编辑

摘要: 线程分为五大状态:新建、就绪、运行、阻塞、死亡。 New,Runnable,Running,Blocked,Terminated. 新建状态(New: 创建好一个系统对象,在调用start()之前,线程处于新建状态。 此时JVM虚拟机仅仅为其分配了内存,仅此而已! 就绪状态(Runnable: 线程 阅读全文

posted @ 2022-05-11 11:13 罗芭Remoo 阅读(29) 评论(0) 推荐(0) 编辑

2022年5月9日

摘要: 这一章,我们学习线程的创建、线程的启动、线程的名字设置、线程的休眠、线程的加入、守护线程、 一个线程是一个单独的类的对象。 想让一个普通的类变成多线程,那么这个类需要继承Thread。 创建多线程的步骤: 1、创建一个类 2、使这个类继承自Thread 3、在类中重写run方法 4、在主线程main 阅读全文

posted @ 2022-05-09 12:47 罗芭Remoo 阅读(51) 评论(0) 推荐(0) 编辑

2022年5月7日

摘要: 这个博客会详细介绍各种技术的知识点,从零基础到入门,充当引路的作用。 同时也会发布一些Swift语言、c#语言、Xcode开发的学习笔记。一些阅读的笔记(部分读书笔记无法发布)。 目前1-43的Java学习路径再加上未来数十期的内容组成Java语言的基础篇,涵盖了所有Java语言的语法以及部分基础的 阅读全文

posted @ 2022-05-07 16:04 罗芭Remoo 阅读(125) 评论(0) 推荐(0) 编辑

2022年5月6日

摘要: 总结 说白了,字节流就是处理类似图片文件、视频文件这些不能直接用记事本打开看的明白的文件。 字符流就是处理可以用记事本直接看的文件。 无论是字节流还是字符流,都有有输入输出两类。(废话) 如果要读取字节流,我们一般使用FileInputStream就可以了,如果需要设置缓冲区大小,那就用Buffer 阅读全文

posted @ 2022-05-06 13:23 罗芭Remoo 阅读(59) 评论(0) 推荐(0) 编辑

2022年5月4日

摘要: 第一种 OutputStreamWriter OutputStreamReader 第二种 FileWriter FileReader 第三种 BufferedWriter BufferedReader 共六种字符流, 一般方便使用中间两种。 如需设置缓冲流大小,则使用第三种。 如需设定字符流的编码 阅读全文

posted @ 2022-05-04 18:27 罗芭Remoo 阅读(53) 评论(0) 推荐(0) 编辑

摘要: 结论:Buffered+数组 这种方式速度是最快的。 public void testBufferedIO(String source,String target){ BufferedInputStream bufferedInputStream = null; BufferedOutputStre 阅读全文

posted @ 2022-05-04 16:25 罗芭Remoo 阅读(18) 评论(0) 推荐(0) 编辑

摘要: @Testpublic void testBufferInputStream(){ BufferedInputStream bfis = null; try { bfis = new BufferedInputStream(new FileInputStream("demo005")); byte[ 阅读全文

posted @ 2022-05-04 15:38 罗芭Remoo 阅读(39) 评论(0) 推荐(0) 编辑

摘要: import java.io.BufferedOutputStream; import java.io.FileOutputStream; import java.io.IOException; public class IOtest_Buffer { public static void main 阅读全文

posted @ 2022-05-04 14:40 罗芭Remoo 阅读(33) 评论(0) 推荐(0) 编辑