<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[枯木逢春犹再发，人无两度再少年]]></title><description><![CDATA[喜欢游戏编程，享受尽在掌控的快乐。]]></description><link>https://blog.youkuaiyun.com/liujun_sdn</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; liujun_sdn]]></copyright><item><title><![CDATA[【缘于J2ME】]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145324389</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145324389</guid><author>liujun_sdn</author><pubDate>Fri, 24 Jan 2025 17:06:42 +0800</pubDate><description><![CDATA[分享我与 J2ME 的故事。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】程序打包，安全可靠]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145283542</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145283542</guid><author>liujun_sdn</author><pubDate>Wed, 22 Jan 2025 11:06:17 +0800</pubDate><description><![CDATA[在前篇文章中，我们通过-d命令可以很轻松地管理程序文件。今天我们再来试试另一种玩法，把你所有的程序文件打包成一个.jar文件，方便你随身携带、拷贝，或者提交给客户。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】神奇的 -d 命令]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145264506</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145264506</guid><author>liujun_sdn</author><pubDate>Tue, 21 Jan 2025 14:43:56 +0800</pubDate><description><![CDATA[总算是入门了，「菜鸟」也终于飞走了。老白认为程序设计是件非常严谨的事情，为了提高编码效率、尽量减少代码错误，非常有必要从现在开始养成一些良好习惯。本文就先从代码文件管理开始，讨论如何规范目录结构，如何使用-d命令自动创建「包」结构。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】简单的聊天客户端]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145246126</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145246126</guid><author>liujun_sdn</author><pubDate>Mon, 20 Jan 2025 15:53:16 +0800</pubDate><description><![CDATA[上一篇文章中实现了一个简单地聊天服务器，本文继续实现一个简单的客户端。虽然看起来很简单，其实一点也不复杂，整个程序用到了GUI、网络、IO以及线程方面的一些基础知识。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】简单的聊天服务器]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145229161</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145229161</guid><author>liujun_sdn</author><pubDate>Sun, 19 Jan 2025 19:20:39 +0800</pubDate><description><![CDATA[最近一周，老白足不出户努力学习GUI、网络以及线程的相关知识。为了检验近期的学习成果，本文准备实现一个简单的聊天服务器程序，下篇文章继续实现客户端代码。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】线程死锁是怎么回事]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145214549</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145214549</guid><author>liujun_sdn</author><pubDate>Sat, 18 Jan 2025 16:30:54 +0800</pubDate><description><![CDATA[前面学过的线程锁，可以有效地排除线程间的干扰。线程锁固然好用，但还需谨慎使用，稍有不慎就会出现令人痛恨的「线程死锁」。本文带你了解什么是线程死锁以及如何避免。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】线程的并发问题（二）]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145191275</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145191275</guid><author>liujun_sdn</author><pubDate>Fri, 17 Jan 2025 20:50:02 +0800</pubDate><description><![CDATA[在上一篇文章中，那个公用账户莫名其妙的出现透支情况，想必大家还心有余悸。今天再来说说线程并发性的另一个问题，导致公共账户的收入无缘无故的减少，简直是欲哭无泪。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】线程的并发问题（一）]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145157334</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145157334</guid><author>liujun_sdn</author><pubDate>Thu, 16 Jan 2025 20:21:14 +0800</pubDate><description><![CDATA[尽管多线程设计很令人兴奋，但还是要尽可能「避坑」。想象一下，当你用精心设计的两个线程同时维护某个对象数据时，这个数据安全吗？这就是本文要讨论的问题 - 线程的并发性可能会破坏数据安全。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】线程的调度机制]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145135703</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145135703</guid><author>liujun_sdn</author><pubDate>Wed, 15 Jan 2025 11:40:24 +0800</pubDate><description><![CDATA[通过上篇文章的学习，现在可以创建自己的线程去执行任务了。老白在想一个问题：程序创建了多个线程后，怎样决定每个线程的执行顺序呢？ 其实，Java 有一种专门管理线程的方式，就是接下来要讨论的线程调度机制。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】线程的专属空间]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145118381</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145118381</guid><author>liujun_sdn</author><pubDate>Tue, 14 Jan 2025 11:50:04 +0800</pubDate><description><![CDATA[到目前为止，我们看到的程序都是在主线程中按顺序执行的。 若是前面有个非常耗时的操作，后边代码再着急也要耐心等待，显然这样的执行效率十分低下。 本文讨论的 Java 多线程技术，就是为了改善此类情况而设计的。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】重返文字聊天的年代（二）]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145098274</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145098274</guid><author>liujun_sdn</author><pubDate>Mon, 13 Jan 2025 16:15:24 +0800</pubDate><description><![CDATA[上一篇文章我们了解了网络通信的基本原理，以及客户端的工作方式。本文继续讨论服务器端的工作流程，然后通过一个简单的例子实现客户端和服务器端的收发功能。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】重返文字聊天的年代（一）]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145075315</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145075315</guid><author>liujun_sdn</author><pubDate>Sun, 12 Jan 2025 19:55:02 +0800</pubDate><description><![CDATA[从本章开始步入网络领域。2000 至今，网络在人们的生活中已经根深蒂固。为何它有如此魔力，究其根本就是网络技术的飞速发展。接下来老白准备从简单地的聊天程序入手，了解网络相关的基础知识。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】项目演练 - Quizzes #3]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145063668</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145063668</guid><author>liujun_sdn</author><pubDate>Sat, 11 Jan 2025 11:58:10 +0800</pubDate><description><![CDATA[本篇文章继续实现卡片引擎的代码，与编辑器一样也是由 GUI 展现给用户。允许从磁盘上读取数据文件然后生成答题卡，用户点击「下一个」按钮就可以显示下个题目内容。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】项目演练 - Quizzes #2]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145040657</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145040657</guid><author>liujun_sdn</author><pubDate>Fri, 10 Jan 2025 18:35:37 +0800</pubDate><description><![CDATA[上一篇文章老白仔细分析了 Quizzes 的类结构，本文接上一章继续对功能模块逐步完善。整个程序没有复杂的算法，仅仅用到了一些基础知识，如果大家已经了解了这部分内容请无视，可以直接选择下一章。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】项目演练 - Quizzes #1]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/145010784</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/145010784</guid><author>liujun_sdn</author><pubDate>Thu, 09 Jan 2025 19:14:52 +0800</pubDate><description><![CDATA[为了巩固近段时期所学习的内容，准备编写一个简单的 GUI 应用，类似答题卡或者叫做知识问答的那种程序。 如果大家感兴趣，也可以自由发挥创建属于自己的应用。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】对象序列号 SerialVersionUID]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/144978270</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/144978270</guid><author>liujun_sdn</author><pubDate>Wed, 08 Jan 2025 15:20:52 +0800</pubDate><description><![CDATA[本文讨论这样一个问题：对象被序列化后，假如原先的类做了修改，那么反序列化还会顺利进行吗？ 要想弄清楚这件事情，请接着往下看。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】写入 / 读取文本数据]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/144950608</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/144950608</guid><author>liujun_sdn</author><pubDate>Tue, 07 Jan 2025 09:25:15 +0800</pubDate><description><![CDATA[本文继续讨论如何写入、读取纯文本文件，与序列化对象相比，纯文本更容易用来解析。最近老白计划开发一款简单的 GUI 应用，主要是为了强化训练文本文件的读、写操作，欢迎大家围观。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】保存 / 恢复对象状态]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/144939635</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/144939635</guid><author>liujun_sdn</author><pubDate>Mon, 06 Jan 2025 16:03:49 +0800</pubDate><description><![CDATA[上两篇文章分别讨论了对象序列化和反序列化，主要是针对数据文件进行读、写操作的介绍。本篇文章通过一个完整的例子，复习一下对象保存与恢复的操作步骤，在文章最后做了总结。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】对象反序列化]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/144925724</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/144925724</guid><author>liujun_sdn</author><pubDate>Sun, 05 Jan 2025 09:15:39 +0800</pubDate><description><![CDATA[上篇文章中，老白弄清楚了什么是对象序列化，也学会了如何把对象写入文件中。本篇文章老白准备继续学习如何从文件中恢复对象，了解一下反序列化的过程中都发生了哪些事情。]]></description><category></category></item><item><title><![CDATA[【老白学 Java】对象序列化]]></title><link>https://blog.youkuaiyun.com/liujun_sdn/article/details/144911291</link><guid>https://blog.youkuaiyun.com/liujun_sdn/article/details/144911291</guid><author>liujun_sdn</author><pubDate>Sat, 04 Jan 2025 10:47:23 +0800</pubDate><description><![CDATA[前几篇文章主要讨论了 GUI 方面的一些内容，如果对游戏设计情有独钟的话，可以仔细研究一下 API 文档。 今天我们要讨论的是文件读写方面的相关操作，比如如何写入序列化对象，如何恢复序列化对象等等。]]></description><category></category></item></channel></rss>