Welcome 微信登录

首页 / 软件开发 / JAVA

Java编程那些事儿92——IO使用注意问题

Java编程那些事儿92——IO使用注意问题

Java编程那些事儿92——IO使用注意问题2010-03-15 csdn 陈跃峰11.3.4 注意问题上面介绍了IO类的基本使用,熟悉了实体流和装饰流的基本使用,但是在IO类实际使用时,还是会遇到一系列的问题,下面介绍一些可能会经常遇到的问题。11.3.4.1 类的选择对于初次接触IO技术的初学者来说,IO类体系博大精深,类的数量比较庞大,在实际使用时经常会无所适从,不知道该使用那些类进行编程,下面介绍一下关于IO类选择的一些技巧。选择类的第一步是选择合...
Java编程那些事儿93——多线程基础

Java编程那些事儿93——多线程基础

Java编程那些事儿93——多线程基础2010-03-15 csdn 陈跃峰第十二章 多线程当计算机处于DOS时代时,程序几乎是没有界面的,而且由于计算机运行速度等原因,那个时代的计算机只能启动一个程序,只有当该程序退出以后才可以执行其它的程序。但是随着计算机性能的提高,以及软件的丰富,如果计算机还只能同时执行一个程序的话,那么计算机恐怕是很多人都不能接受的。这种在任何一个时间点,可以有多个程序同时执行,或者有多个程序逻辑同时执行的能力,成为并发执行。现在...
Java编程那些事儿94——多线程实现方式1

Java编程那些事儿94——多线程实现方式1

Java编程那些事儿94——多线程实现方式12010-03-15 csdn 陈跃峰12.2 多线程实现方式线程的概念虽然比较复杂,但是在Java语言中实现线程却比较简单,只需要按照Java语言中对于线程的规定进行编程即可。在实现线程编程时,首先需要让一个类具备多线程的能力,继承Thread类或实现Runnable接口的类具备多线程的能力,然后创建线程对象,调用对应的启动线程方法开始执行即可实现多线程编程。在一个程序中可以实现多个线程,多线程编程指在同一个程...
Java编程那些事儿95——多线程实现方式2

Java编程那些事儿95——多线程实现方式2

Java编程那些事儿95——多线程实现方式22010-03-15 csdn 陈跃峰12.2.2实现Runnable接口一个类如果需要具备多线程的能力,也可以通过实现java.lang.Runnable接口进行实现。按照Java语言的语法,一个类可以实现任意多个接口,所以该种实现方式在实际实现时的通用性要比前面介绍的方式好一些。使用实现Runnable接口实现多线程的示例代码如下:/*** 测试类*/public class Test2 { public s...
Java编程那些事儿96——多线程使用示例1

Java编程那些事儿96——多线程使用示例1

Java编程那些事儿96——多线程使用示例12010-03-15 csdn 陈跃峰12.3 多线程使用示例多线程技术对于初学者来说,是编程思维的一种跳跃,在实际学习时,一定要熟悉线程的基础知识,掌握线程的实现方式,然后就是开始大量的进行实践,从实践中领悟线程编程的奥妙以及实现的原理。下面通过几个常见的例子演示多线程的基本使用。12.3.1 定时炸弹定时炸弹是在电影中常见的一种装置,在该部分就使用多线程技术模拟该功能。实现的功能为:在程序启动以后进行倒计时,...
Java编程那些事儿97——多线程使用示例2

Java编程那些事儿97——多线程使用示例2

Java编程那些事儿97——多线程使用示例22010-03-15 csdn 陈跃峰12.3.2 模拟网络数据发送在实际的网络程序开发中,由于网络通讯一般都需要消耗时间,所以网络通讯的内容一般都启动专门的线程进行处理。这样,在一个最简单的网络程序程序中,至少就包含了两个线程:处理界面绘制和接收用户输入的系统线程,以及至少一个网络通讯线程。下面以一个简单的模拟程序,实现模拟网络数据的发送功能,关于更详细的网络编程中线程的使用,可以参看后续的网络编程章节。在该示...
Java编程那些事儿98——多线程问题及处理1

Java编程那些事儿98——多线程问题及处理1

Java编程那些事儿98——多线程问题及处理12010-03-15 csdn 陈跃峰12.4 多线程问题及处理多线程编程为程序开发带来了很多的方便,但是也带来了一些问题,这些问题是在程序开发过程中必须进行处理的问题。这些问题的核心是,如果多个线程同时访问一个资源,例如变量、文件等,时如何保证访问安全的问题。在多线程编程中,这种会被多个线程同时访问的资源叫做临界资源。下面通过一个简单的示例,演示多个线程访问临界资源时产生的问题。在该示例中,启动了两个线程类D...
Java编程那些事儿99——多线程问题及处理2

Java编程那些事儿99——多线程问题及处理2

Java编程那些事儿99——多线程问题及处理22010-03-15 csdn 陈跃峰如果这个例子还不能帮助你理解如何解决多线程的问题,那么下面再来看一个更加实际的例子——卫生间问题。例如火车上车厢的卫生间,为了简单,这里只模拟一个卫生间,这个卫生间会被多个人同时使用,在实际使用时,当一个人进入卫生间时则会把卫生间锁上,等出来时打开门,下一个人进去把门锁上,如果有一个人在卫生间内部则别人的人发现门是锁的则只能在外面等待。从编程的角度来...
Java编程那些事儿100——多线程问题及处理3

Java编程那些事儿100——多线程问题及处理3

Java编程那些事儿100——多线程问题及处理32010-03-15 csdn 陈跃峰12.4.3 死锁多线程编程在实际的网络程序开发中,在客户端程序实现中使用的比较简单,但是在服务器端程序实现中却不仅是大量使用,而且会出现比客户端更多的问题。另外一个容易在服务器端出现的多线程问题是——死锁。死锁指两个或两个以上的线程为了使用某个临界资源而无限制的等待下去。还是以前面卫生间的例子来说明死锁,例如两个人都同时到达卫生间,而且两个人都比...
Java编程那些事儿101——网络编程概述

Java编程那些事儿101——网络编程概述

Java编程那些事儿101——网络编程概述2010-03-15 csdn 陈跃峰第十三章 网络编程网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入网络编程的大门而放弃了对于该部分技术的学习。在学习网络编程以前,很多初学者可能觉得网络编程是比较复杂的系统工程,需要了解很多和网络相关的基础知识,其实这些都不是很必需的。首先来问一个问题:你会打手机吗?很多人可能说肯定会啊,不就是按按电话号码,拨打电话嘛,很简单的...
Java编程那些事儿102——网络编程技术1

Java编程那些事儿102——网络编程技术1

Java编程那些事儿102——网络编程技术12010-03-20 csdn 陈跃峰13.2 网络编程技术前面介绍了网络编程的相关基础知识,初步建立了网络编程的概念,但是实际学习网络编程还必须使用某种程序设计语言进行代码实现,下面就介绍一下网络编程的代码实现。13.2.1 网络编程步骤按照前面的基础知识介绍,无论使用TCP方式还是UDP方式进行网络通讯,网络编程都是由客户端和服务器端组成。当然,B/S结构的编程中只需要实现服务器端即可。所以,下面介绍网络编程...
Java编程那些事儿103——网络编程技术2

Java编程那些事儿103——网络编程技术2

Java编程那些事儿103——网络编程技术22010-03-20 csdn 陈跃峰13.2.3 TCP编程按照前面的介绍,网络通讯的方式有TCP和UDP两种,其中TCP方式的网络通讯是指在通讯的过程中保持连接,有点类似于打电话,只需要拨打一次号码(建立一次网络连接),就可以多次通话(多次传输数据)。这样方式在实际的网络编程中,由于传输可靠,类似于打电话,如果甲给乙打电话,乙说没有听清楚让甲重复一遍,直到乙听清楚为止,实际的网络传输也是这样,如果发送的一方发...
Java编程那些事儿104——网络编程技术3

Java编程那些事儿104——网络编程技术3

Java编程那些事儿104——网络编程技术32010-03-20 csdn 陈跃峰为了一步一步的掌握网络编程,下面再研究网络编程中的两个基本问题,通过解决这两个问题将对网络编程的认识深入一层。1、如何复用Socket连接?在前面的示例中,客户端中建立了一次连接,只发送一次数据就关闭了,这就相当于拨打电话时,电话打通了只对话一次就关闭了,其实更加常用的应该是拨通一次电话以后多次对话,这就是复用客户端连接。那么如何实现建立一次连接,进行多次数据交换呢?其实很简...
Java编程那些事儿105——网络编程技术4

Java编程那些事儿105——网络编程技术4

Java编程那些事儿105——网络编程技术42010-03-20 csdn 陈跃峰13.2.4 UDP编程网络通讯的方式除了TCP方式以外,还有一种实现的方式就是UDP方式。UDP(User Datagram Protocol),中文意思是用户数据报协议,方式类似于发短信息,是一种物美价廉的通讯方式,使用该种方式无需建立专用的虚拟连接,由于无需建立专用的连接,所以对于服务器的压力要比TCP小很多,所以也是一种常见的网络编程方式。但是使用该种方式最大的不足是...
Java编程那些事儿106——网络编程技术5

Java编程那些事儿106——网络编程技术5

Java编程那些事儿106——网络编程技术52010-03-20 csdn 陈跃峰该示例的功能是实现将客户端程序的系统时间发送给服务器端,服务器端接收到时间以后,向客户端反馈字符串“OK”。实现该功能的客户端代码如下所示:package udp;import java.net.*;import java.util.*;/*** 简单的UDP客户端,实现向服务器端发生系统时间功能*/public class SimpleUDPClie...
Java编程那些事儿107——网络协议概念

Java编程那些事儿107——网络协议概念

Java编程那些事儿107——网络协议概念2010-03-20 csdn 陈跃峰13.2.5 网络协议对于需要从事网络编程的程序员来说,网络协议是一个需要深刻理解的概念。那么什么是网络协议呢?网络协议是指对于网络中传输的数据格式的规定。对于网络编程初学者来说,没有必要深入了解TCP/IP协议簇,所以对于初学者来说去读大部头的《TCP/IP协议》也不是一件很合适的事情,因为深入了解TCP/IP协议是网络编程提高阶段,也是深入网络编程底层时才需要做的事情。对于...
Java编程那些事儿108——网络编程示例1

Java编程那些事儿108——网络编程示例1

Java编程那些事儿108——网络编程示例12010-03-20 csdn 陈跃峰13.3 网络编程示例“实践出真知”,所以在进行技术学习时,还是需要进行很多的练习,才可以体会技术的奥妙,下面通过两个简单的示例,演示网络编程的实际使用。13.3.1质数判别示例该示例实现的功能是质数判断,程序实现的功能为客户端程序接收用户输入的数字,然后将用户输入的内容发送给服务器端,服务器端判断客户端发送的数字是否是质数,并将判断的结果反馈给客户端...
Java编程那些事儿109——网络编程示例2

Java编程那些事儿109——网络编程示例2

Java编程那些事儿109——网络编程示例22010-03-20 csdn 陈跃峰13.3.2 猜数字小游戏下面这个示例是一个猜数字的控制台小游戏。该游戏的规则是:当客户端第一次连接到服务器端时,服务器端生产一个「0,50」之间的随机数字,然后客户端输入数字来猜该数字,每次客户端输入数字以后,发送给服务器端,服务器端判断该客户端发送的数字和随机数字的关系,并反馈比较结果,客户端总共有5次猜的机会,猜中时提示猜中,当输入“quit”时...
Java编程那些事儿110——网络编程小结

Java编程那些事儿110——网络编程小结

Java编程那些事儿110——网络编程小结2010-03-20 csdn 陈跃峰13.4 中文问题网络传输过程中的中文问题也比较突出,出现该问题的原因和前面IO部分介绍的一致,都是由于传输过程中客户端程序和服务器端程序采用的字符集不一致,在解决该问题以前首先进行如下的思考:是否在网络中一定要传输中文字符?从前面的示例中可以看出,通过一定的协议格式设计,可以避免在网络中传输中文字符,这样就从基础上避免了中文问题的出现。例如在程序中需要传输“成功&...
JBuilder2005实现重构之重命名

JBuilder2005实现重构之重命名

JBuilder2005实现重构之重命名2010-03-20当需要对包、类、方法、值域、局域变量等这些元素进行更名时,请不要通过Search->Replace...或者Search->Replace in path...菜单来进行,而应该用重构功能来完成。如前所述,因为在一个工程中,元素可能已经有众多的调用者,通过替换更名将很难保证定义和调用的同步更改,而重构则从语义关联上提供同时调整的保障。应该说,有了重构,替换的功能在JBuilder将大大...
<< 41 42 43 44 45 46 47 48 49 50 >>