
Java编程那些事
由于工作的特点,遇到了各种各样的学生,在学习编程时遇到了一系列的问题,也有很多迷茫的时候,希望通过这些文章,把相关的问题进行一下总结,把自己的经验和大家进行分享。
网络咖啡
专注android、iOS手机app软件开发
展开
-
Java编程那些事儿110——网络编程小结
Java编程那些事儿110——网络编程小结陈跃峰出自:http://blog.youkuaiyun.com/mailbomb13.4 中文问题 网络传输过程中的中文问题也比较突出,出现该问题的原因和前面IO部分介绍的一致,都是由于传输过程中客户端程序和服务器端程序采用的字符集不一致,在解决该问题以前首先进行如下的思考: 是否在网络中一定要原创 2009-06-27 15:32:00 · 7453 阅读 · 6 评论 -
Java编程那些事儿109——网络编程示例2
Java编程那些事儿109——网络编程示例2陈跃峰出自:http://blog.youkuaiyun.com/mailbomb13.3.2 猜数字小游戏 下面这个示例是一个猜数字的控制台小游戏。该游戏的规则是:当客户端第一次连接到服务器端时,服务器端生产一个【0,50】之间的随机数字,然后客户端输入数字来猜该数字,每次客户端输入数字以后,发送给服务器端,服务器端判断该客户端发送原创 2009-06-24 10:57:00 · 6709 阅读 · 6 评论 -
Java编程那些事儿108——网络编程示例1
Java编程那些事儿108——网络编程示例1陈跃峰出自:http://blog.youkuaiyun.com/mailbomb13.3 网络编程示例 “实践出真知”,所以在进行技术学习时,还是需要进行很多的练习,才可以体会技术的奥妙,下面通过两个简单的示例,演示网络编程的实际使用。13.3.1质数判别示例 该示例实现的功能是质数判断,程序实现的功能为客户原创 2009-06-17 18:20:00 · 5817 阅读 · 7 评论 -
Java编程那些事儿107——网络协议概念
Java编程那些事儿107——网络协议概念陈跃峰出自:http://blog.youkuaiyun.com/mailbomb13.2.5 网络协议 对于需要从事网络编程的程序员来说,网络协议是一个需要深刻理解的概念。那么什么是网络协议呢? 网络协议是指对于网络中传输的数据格式的规定。对于网络编程初学者来说,没有必要深入了解TCP/IP协议簇,所以对于初学者来原创 2009-06-16 18:24:00 · 9883 阅读 · 11 评论 -
Java编程那些事儿106——网络编程技术5
Java编程那些事儿106——网络编程技术5陈跃峰出自:http://blog.youkuaiyun.com/mailbomb该示例的功能是实现将客户端程序的系统时间发送给服务器端,服务器端接收到时间以后,向客户端反馈字符串“OK”。实现该功能的客户端代码如下所示: package udp;import java.net.*;import java.util.*;/*原创 2009-06-14 16:45:00 · 4695 阅读 · 7 评论 -
Java编程那些事儿105——网络编程技术4
Java编程那些事儿105——网络编程技术4陈跃峰出自:http://blog.youkuaiyun.com/mailbomb13.2.4 UDP编程 网络通讯的方式除了TCP方式以外,还有一种实现的方式就是UDP方式。UDP(User Datagram Protocol),中文意思是用户数据报协议,方式类似于发短信息,是一种物美价廉的通讯方式,使用该种方式无需建立专用的虚拟连原创 2009-06-14 01:05:00 · 4004 阅读 · 1 评论 -
Java编程那些事儿104——网络编程技术3
Java编程那些事儿104——网络编程技术3陈跃峰出自:http://blog.youkuaiyun.com/mailbomb 为了一步一步的掌握网络编程,下面再研究网络编程中的两个基本问题,通过解决这两个问题将对网络编程的认识深入一层。1、如何复用Socket连接?在前面的示例中,客户端中建立了一次连接,只发送一次数据就关闭了,这就相当于拨打电话时,电话打通了只对话原创 2009-06-10 20:13:00 · 7277 阅读 · 10 评论 -
Java编程那些事儿103——网络编程技术2
Java编程那些事儿103——网络编程技术2陈跃峰出自:http://blog.youkuaiyun.com/mailbomb13.2.3 TCP编程 按照前面的介绍,网络通讯的方式有TCP和UDP两种,其中TCP方式的网络通讯是指在通讯的过程中保持连接,有点类似于打电话,只需要拨打一次号码(建立一次网络连接),就可以多次通话(多次传输数据)。这样方式在实际的网络编程中,由于传原创 2009-06-07 16:55:00 · 6136 阅读 · 2 评论 -
Java编程那些事儿102——网络编程技术1
Java编程那些事儿102——网络编程技术1陈跃峰 出自:http://blog.youkuaiyun.com/mailbomb13.2 网络编程技术 前面介绍了网络编程的相关基础知识,初步建立了网络编程的概念,但是实际学习网络编程还必须使用某种程序设计语言进行代码实现原创 2009-06-05 17:19:00 · 7526 阅读 · 10 评论 -
Java编程那些事儿101——网络编程概述
Java编程那些事儿101——网络编程概述陈跃峰出自:http://blog.youkuaiyun.com/mailbomb第十三章 网络编程 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入网络编程的大门而放弃了对于该部分技术的学习。 在学习网络编程以前,很多初学者可能觉得网络编程是比较复杂的系统工程,需要原创 2009-06-04 18:35:00 · 6601 阅读 · 18 评论 -
Java编程那些事儿100——多线程问题及处理3
Java编程那些事儿100——多线程问题及处理3陈跃峰出自:http://blog.youkuaiyun.com/mailbomb12.4.3 死锁 多线程编程在实际的网络程序开发中,在客户端程序实现中使用的比较简单,但是在服务器端程序实现中却不仅是大量使用,而且会出现比客户端更多的问题。 另外一个容易在服务器端出现的多线程问题是——死锁。死锁指两个或两个以原创 2009-05-29 10:25:00 · 4897 阅读 · 11 评论 -
Java编程那些事儿99——多线程问题及处理2
Java编程那些事儿99——多线程问题及处理2陈跃峰出自:http://blog.youkuaiyun.com/mailbomb 如果这个例子还不能帮助你理解如何解决多线程的问题,那么下面再来看一个更加实际的例子——卫生间问题。 例如火车上车厢的卫生间,为了简单,这里只模拟一个卫生间,这个卫生间会被多个人同时使用,在实际使用时,当一个人进入卫生间时则会把卫生间锁上,等出来时原创 2009-05-27 16:29:00 · 3927 阅读 · 6 评论 -
Java编程那些事儿98——多线程问题及处理1
Java编程那些事儿98——多线程问题及处理1陈跃峰出自:http://blog.youkuaiyun.com/mailbomb12.4 多线程问题及处理 多线程编程为程序开发带来了很多的方便,但是也带来了一些问题,这些问题是在程序开发过程中必须进行处理的问题。 这些问题的核心是,如果多个线程同时访问一个资源,例如变量、文件等,时如何保证访问安全的问题。在多原创 2009-05-23 15:40:00 · 4422 阅读 · 10 评论 -
Java编程那些事儿97——多线程使用示例2
Java编程那些事儿97——多线程使用示例2陈跃峰出自:http://blog.youkuaiyun.com/mailbomb12.3.2 模拟网络数据发送 在实际的网络程序开发中,由于网络通讯一般都需要消耗时间,所以网络通讯的内容一般都启动专门的线程进行处理。 这样,在一个最简单的网络程序程序中,至少就包含了两个线程:处理界面绘制和接收用户输入的系统线程,原创 2009-05-22 17:32:00 · 3474 阅读 · 2 评论 -
Java编程那些事儿96——多线程使用示例1
Java编程那些事儿96——多线程使用示例1陈跃峰出自:http://blog.youkuaiyun.com/mailbomb 12.3 多线程使用示例 多线程技术对于初学者来说,是编程思维的一种跳跃,在实际学习时,一定要熟悉线程的基础知识,掌握线程的实现方式,然后就是开始大量的进行实践,从实践中领悟线程编程的奥妙以及实现的原理。 下面通过几个常见的例子原创 2009-05-22 01:02:00 · 3606 阅读 · 9 评论 -
Java编程那些事儿95——多线程实现方式2
Java编程那些事儿95——多线程实现方式2陈跃峰出自:http://blog.youkuaiyun.com/mailbomb12.2.2实现Runnable接口 一个类如果需要具备多线程的能力,也可以通过实现java.lang.Runnable接口进行实现。按照Java语言的语法,一个类可以实现任意多个接口,所以该种实现方式在实际实现时的通用性要比前面介绍的方式好一些。原创 2009-05-20 19:23:00 · 4991 阅读 · 10 评论 -
Java编程那些事儿94——多线程实现方式1
Java编程那些事儿94——多线程实现方式1陈跃峰出自:http://blog.youkuaiyun.com/mailbomb 12.2 多线程实现方式 线程的概念虽然比较复杂,但是在Java语言中实现线程却比较简单,只需要按照Java语言中对于线程的规定进行编程即可。 在实现线程编程时,首先需要让一个类具备多线程的能力,继承Thread类或实现Runn原创 2009-05-19 11:34:00 · 6078 阅读 · 9 评论 -
Java编程那些事儿93——多线程基础
Java编程那些事儿93——多线程基础陈跃峰出自:http://blog.youkuaiyun.com/mailbomb第十二章 多线程 当计算机处于DOS时代时,程序几乎是没有界面的,而且由于计算机运行速度等原因,那个时代的计算机只能启动一个程序,只有当该程序退出以后才可以执行其它的程序。但是随着计算机性能的提高,以及软件的丰富,如果计算机还只能同时执行一个程序的话,那么计算原创 2009-05-18 16:56:00 · 5794 阅读 · 5 评论 -
Java编程那些事儿92——IO使用注意问题
Java编程那些事儿92——IO使用注意问题陈跃峰出自:http://blog.youkuaiyun.com/mailbomb11.3.4 注意问题 上面介绍了IO类的基本使用,熟悉了实体流和装饰流的基本使用,但是在IO类实际使用时,还是会遇到一系列的问题,下面介绍一些可能会经常遇到的问题。11.3.4.1 类的选择 对于初次接触IO技术的初学者来说,I原创 2009-04-28 13:03:00 · 4029 阅读 · 19 评论 -
Java编程那些事儿91——装饰流使用2
Java编程那些事儿91——装饰流使用2陈跃峰出自:http://blog.youkuaiyun.com/mailbomb11.3.3.2 BufferedReader/BufferedWriter 在进行IO操作时,除了功能以外,程序的执行效率也是必须要考虑的问题。基本的IO类只是注重功能的实现,例如将特定的数据源转换为流对象,而没有过多的关注读写的效率问题,而实际在进行项目原创 2009-04-27 08:42:00 · 7436 阅读 · 9 评论 -
Java编程那些事儿90——装饰流使用1
Java编程那些事儿90——装饰流使用1陈跃峰出自:http://blog.youkuaiyun.com/mailbomb11.3.3 装饰流使用 除了按照流的方向可以把流划分为输入流和输出流两类,按照流读写数据的基本单位把流划分为字节流和字符流两类以外,还可以按照流是否直接连接实际数据源,例如文件、网络、字节数组等,将流又可以划分为实体流和装饰流两大类。原创 2009-04-20 15:29:00 · 4428 阅读 · 4 评论 -
Java编程那些事儿89——读取控制台输入
Java编程那些事儿89——读取控制台输入陈跃峰出自:http://blog.youkuaiyun.com/mailbomb11.3.2 读取控制台输入 前面介绍了使用IO类实现文件读写的示例,其实在很多地方还需要使用到IO类,这里再以读取控制台输入为例子来介绍IO类的使用。 控制台(Console)指无图形界面的程序,运行时显示或输入数据的位置,前面的介绍原创 2009-04-18 15:23:00 · 5103 阅读 · 6 评论 -
Java编程那些事儿88——文件操作之写文件
Java编程那些事儿88——文件操作之写文件陈跃峰出自:http://blog.youkuaiyun.com/mailbomb11.3.1.4 写文件 如前所述,将程序内部的数据输出到程序外部的数据源,应该使用IO类体系中的输出流。在实际的编程中,将程序中的数据,例如用户设定或程序运行时生成的内容,存储到外部的文件中,应该使用输出流进行编程。 基本的输出流包原创 2009-04-15 17:26:00 · 4656 阅读 · 6 评论 -
Java编程那些事儿87——文件操作之读取文件
Java编程那些事儿87——文件操作之读取文件陈跃峰出自:http://blog.youkuaiyun.com/mailbomb11.3.1.3 读取文件 虽然前面介绍了流的概念,但是这个概念对于初学者来说,还是比较抽象的,下面以实际的读取文件为例子,介绍流的概念,以及输入流的基本使用。 按照前面介绍的知识,将文件中的数据读入程序,是将程序外部的数据传入程序原创 2009-04-10 11:40:00 · 5224 阅读 · 12 评论 -
Java编程那些事儿86——文件操作之File类使用
Java编程那些事儿86——文件操作之File类使用陈跃峰出自:http://blog.youkuaiyun.com/mailbomb11.3 I/O类使用 由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择。因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程的一个基本能力。本章IO类的使用就从读写文件开原创 2009-04-08 10:13:00 · 6947 阅读 · 18 评论 -
Java编程那些事儿85——IO类体系
Java编程那些事儿85——IO类体系陈跃峰出自:http://blog.youkuaiyun.com/mailbomb11.2 I/O类体系 在JDK API中,基础的IO类都位于java.io包,而新实现的IO类则位于一系列以java.nio开头的包名中,这里首先介绍java.io包中类的体系结构。 按照前面的说明,流是有方向的,则整个流的结构按照流的方原创 2009-04-03 15:35:00 · 4368 阅读 · 2 评论 -
Java编程那些事儿84——IO简介
Java编程那些事儿84——IO简介陈跃峰出自:http://blog.youkuaiyun.com/mailbomb第十一章 I/O处理 I/O(Input/Output)是输入和输出的简称,在Java语言中所有和输入输出有关的都属于IO处理技术,例如包含文件的读写和网络数据的发送等。 其实整个计算机实现功能时最主要的就是IO,用户使用鼠标、键盘等输入设备原创 2009-03-28 12:45:00 · 4580 阅读 · 4 评论 -
Java编程那些事儿83——异常处理语法2
Java编程那些事儿83——异常处理语法2陈跃峰出自:http://blog.youkuaiyun.com/mailbomb10.3.3 捕获异常及异常处理 在整个异常处理机制中,异常在系统中进行传递,传递到程序员认为合适的位置,就捕获到该异常,然后进行逻辑处理,使得项目不会因为出现异常而崩溃。 为了捕获异常并对异常进行处理,使用的捕获异常以及处理的语法格式原创 2009-03-23 11:27:00 · 4598 阅读 · 6 评论 -
Java编程那些事儿82——异常处理语法1
Java编程那些事儿82——异常处理语法1陈跃峰出自:http://blog.youkuaiyun.com/mailbomb10.3 异常处理语法 为了方便程序员进行异常的处理,在Java语言中创建了一套语法,这些语法主要分为以下几个部分: 1、抛出异常当程序运行时,如果发现异常的情况,通过生成对应的异常对象,并将该异常对象传递给Ja原创 2009-03-23 09:04:00 · 4157 阅读 · 4 评论 -
Java编程那些事儿81——异常处理概述
Java编程那些事儿81——异常处理概述陈跃峰出自:http://blog.youkuaiyun.com/mailbomb第十章 异常处理 在实际的项目中,程序执行时经常会出现一些意外的情况,这些意外的情况会导致程序出错或者崩溃,从而影响程序的正常执行,如果不能很好的处理这些意外情况,将使项目的稳定性不强。 对于这些程序执行时出现的意外情况,在Java语言中原创 2009-03-21 14:18:00 · 4355 阅读 · 0 评论 -
Java编程那些事儿80——集合框架简述
Java编程那些事儿80——集合框架简述陈跃峰出自:http://blog.youkuaiyun.com/mailbomb9.6.3 集合框架简述 在JDK API中专门设计了一组类,这组类的功能就是实现各种各样方式的数据存储,这样一组专门用来存储其它对象的类,一般被称为对象容器类,简称容器类,这组类和接口的设计结构也被统称为集合框架(Collection Framework)原创 2009-03-14 12:41:00 · 6897 阅读 · 15 评论 -
Java编程那些事儿79——Random随机处理
Java编程那些事儿79——Random随机处理陈跃峰出自:http://blog.youkuaiyun.com/mailbomb9.6.2 Random类 在实际的项目开发过程中,经常需要产生一些随机数值,例如网站登录中的校验数字等,或者需要以一定的几率实现某种效果,例如游戏程序中的物品掉落等。 在Java API中,在java.util包中专门提供了一个原创 2009-03-11 18:06:00 · 5928 阅读 · 9 评论 -
Java编程那些事儿78——时间和日期处理
Java编程那些事儿78——时间和日期处理陈跃峰出自:http://blog.youkuaiyun.com/mailbomb9.6 java.util包 java.util包是Java语言提供的工具类包,该包中包含了如日期、随机数和数据结构实现类等一系列的工具类实现,是学习Java语言的基础包之一。 本部分就以Java语言中常用的时间和日期处理、随机数处理以原创 2009-03-10 14:59:00 · 6637 阅读 · 10 评论 -
Java编程那些事儿77——包装类
Java编程那些事儿77——包装类陈跃峰出自:http://blog.youkuaiyun.com/mailbomb9.5.5 包装类 Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数据类型对应的类统称为包装类(Wrapper原创 2009-03-05 16:47:00 · 5663 阅读 · 9 评论 -
Java编程那些事儿76——StringBuffer类和System类
Java编程那些事儿76——StringBuffer类和System类陈跃峰出自:http://blog.youkuaiyun.com/mailbomb9.5.3.2 StringBuffer类 StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成原创 2009-02-25 17:39:00 · 5833 阅读 · 7 评论 -
Java编程那些事儿75——String类使用
Java编程那些事儿75——String类使用陈跃峰出自:http://blog.youkuaiyun.com/mailbomb9.5.3 String和StringBuffer String和StringBuffer类都是代表字符串,也就是任意多个字符组成的序列。程序需要存储的大量文字一般都使用字符串进行代表。在这两个类中,包含了大部分关于字符串操作的方法,在实际操作字符串时原创 2009-02-23 17:48:00 · 6817 阅读 · 13 评论 -
Java编程那些事儿74——java.lang包介绍1
Java编程那些事儿74——java.lang包介绍1陈跃峰出自:http://blog.youkuaiyun.com/mailbomb9.4 JDK API包名综述 在整个JDK API中,大约包含1、200个包,总体来看,包名第一个名称主要有三种:java、javax和org。其中以java开头的包名是JDK的基础语言包,以javax开头的属于JDK扩展包(其中x是ex原创 2009-02-19 16:35:00 · 12099 阅读 · 9 评论 -
Java编程那些事儿73——JDK文档使用
Java编程那些事儿73——JDK文档使用陈跃峰出自:http://blog.youkuaiyun.com/mailbomb第九章 JDK文档使用 前面提到过,一个程序设计语言主要包含三个部分:语言的语法、开发工具和一套基础的功能。Java语言的语法以及开发工具JDK前面都已经介绍过了,本章就将介绍Java语言提供的这套基础的功能。 对于任何一个程序设计原创 2009-01-14 23:08:00 · 6702 阅读 · 8 评论 -
Java编程那些事儿72——包的概念
Java编程那些事儿72<span style="font-family:宋体;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri">——包的概念陈跃峰出自:http://blog.youkuaiyun.com/mailbomb 8.11 <span style="font-family:宋体;mso-as原创 2009-01-12 22:46:00 · 5720 阅读 · 3 评论 -
Java编程那些事儿71——内部类简介
Java编程那些事儿71<span style="font-family:宋体;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri">——内部类简介陈跃峰出自:http://blog.youkuaiyun.com/mailbomb 8.10 内部类(Inner Class) 内部类原创 2009-01-06 09:32:00 · 5562 阅读 · 0 评论