摘要: 第24章 网络聊天室在网络编程一章中,介绍过一个简单的聊天室程序,其功能比较有限,并且是界面也不友好。本章将会完整的介绍一个相对来说完整的,界面友好的聊天室。本章的聊天室程序是的客户端是以Applet形式实现的,更方便Java嵌入在网页中使用的原意。24.1 服务器端在聊天室服务器端需要完成的任务有以下几点: 监听用户的连接请求储存连接用户的信息转发用户发送的信息处理用户的退出的信息24.1.1 服务器服务器端首先需要建立一个ServerSocket,然后监听用户的连接请求。当监听到用户请求时,建立相应的Socket,通过该Socket与用户进行信息的交互。24.1.2 服务器端线程对象服务器 阅读全文
posted @ 2012-04-23 23:09 yoogoo 阅读(315) 评论(0) 推荐(0)
摘要: 第22章 JSP技术简介Internet已经发展成为电子商务、电子政务、应用系统等Web应用的基础设施。基于Web的应用程序称为浏览器/服务器模式,即B/S模式。跟传统的服务器/客户端模式相比,B/S结构的管理和部署都非常简单。要开发Web应用程序,传统的HTML已经不能满足要求,需要一些语言用于动态的处理用户请求。目前,生成动态网页的方法有CGI、ASP、PHP和JSP。其中JSP是基于Java的,本章主要介绍JSP的知识。22.1 JSP综述JSP是Java Server Page的缩写。它是SUN公司推出的一门基于Java的Web动态页面技术。JSP为创建动态的Web应用程序提供了简介快 阅读全文
posted @ 2012-04-23 23:08 yoogoo 阅读(463) 评论(0) 推荐(0)
摘要: 第23章 用户登录验证模块本章的内容是分析一个用户登录验证的过程。该过程虽然简单,但是要涉及到HTML、Servlet、数据库和XML等各个方面的知识,也反映了这些知识综合运用的重要性。在本章中使用servlet和javaBean来把验证的流程从页面中分离出来。这样就能把业务逻辑把和页面显示分离开,采用了目前流行的MVC结构来设计,各部分的作用都很清楚。23.1 验证过程分析一个用户登录过程看似简单,但是它包括了web开发的一个基本框架。整个过程用户通过服务器与数据库进行交互,验证登录是否成功。 在本章中使用的技术实现中,它的流程如下:首先客户端进入登录页面,在登录页面输入用户名、密码。单击提 阅读全文
posted @ 2012-04-23 23:08 yoogoo 阅读(3140) 评论(0) 推荐(0)
摘要: 第20章 数据库编程数据库技术如今发展十分迅速,已经广泛的应用于各个行业。尤其在金融、电信等业务系统中占有十分重要的地位。作为一门强大的编程语言,Java对数据库的支持也十分强大,通过JDBC工具可以方便的进行数据库编程。本章将会先简单的介绍数据库的知识,然后重点介绍Java中对数据库的支持。20.1 数据库基础知识也许读者可能并不了解数据库的知识,所以本书设置了本节。本节会对数据库进行简单的介绍,内容主要包括关系数据库、SQL语句以及MySQL数据库的基本知识。通过本节的学习,读者能对数据库的基本知识有一个大体的了解。 20.1.1 关系数据库数据库是根据某种数据模型组织起来存放到硬盘等二级 阅读全文
posted @ 2012-04-23 23:07 yoogoo 阅读(375) 评论(0) 推荐(0)
摘要: 第21章 集合框架通过前面几章的介绍,读者对Java的基本特性已经有了一定了解。但是关于数据的存储目前还没有一个很好的工具,比如对象集合如何保存,可以使用它们使得在添加、查找、删除对象时候的效率更高。这时候就需要使用集合,使用了这些类和接口,就能方便操作大量的数据。前面讨论了关于数组的感念,其实数组就是一黾希撬泻芏嗖环奖愕牡胤健1热纾憾ㄒ逡桓鍪榈氖焙颍匦肷昝魉某ざ龋橹兄荒艽娣乓恢掷嘈偷氖荩庋钥⒑懿焕Java提供了集合框架来解决这写问题。21.1 集合概述本节的主要内容是介绍什么是集合框架,以及现在集合框架的一些新的特性,如泛型、自动装箱与自动拆性、for-each循 阅读全文
posted @ 2012-04-23 23:07 yoogoo 阅读(207) 评论(0) 推荐(0)
摘要: 第19章 网络编程网络应用是Java语言取得成功的领域之一,它已经成为现在Internet上最流行的一种编程语言。Java语言在网络编程方面提供了许多方便,其他语言往往需要数页代码才能完成的事情,在Java中可能只需要一条语句就可以。本节就主要介绍网络编程中要用到的Java类,如InetAddress 、URLs、Sockets、Datagram,在本章的最后,会讲解一个简单聊天室的示例。19.1 InetAddress类InetAddress是表示网络协议地址的类。可以用于标识网络上的硬件资源,它提供了一系列方法以描述、获取及使用网络资源。InetAddress类没有提供构造函数,因此不能用 阅读全文
posted @ 2012-04-23 23:06 yoogoo 阅读(301) 评论(0) 推荐(0)
摘要: 第17章 Java常用类Java中的类库非常大,对于开发提供了强有力的支持。本章就针对于部分常用的类进行介绍,用户可以应用这些类库比较方便的实现一些复杂的功能。17.1 封装类Java语言中为每一中基本的数据类型都提供了一个相对应的封装类,例如Integer类所对应的int型、Float类所对应的float型等等。这样一来就大大加快了程序的处理速度,提高程序的性能。Java中的封装类主要有Double、Float、Long、Integer、Short、Byte、Character和Boolean这几种。本小节就会对这些类进行介绍。17.1.1 Integer类Integer是基本数据类型的包装 阅读全文
posted @ 2012-04-23 23:05 yoogoo 阅读(383) 评论(0) 推荐(0)
摘要: 第18章 泛型泛型是J2SE 5中新添加的特性。该特性可以说对Java的影响非常大,甚至说翻天覆地的变化也不为过。本章主要对Java的泛型特性进行介绍。主要包括为什么要使用泛型,泛型方法、泛型类的使用以及泛型对Java继承机制的影响。通过本章的学习,读者应该在编程中尽量的使用泛型。18.1 为什么泛型这一节主要介绍Java中泛型产生的原因,泛型为Java带来的好处。主要还是通过示例来进行介绍,比较泛型前后编程的不同。通过一个使用泛型来编程的例子以及一个不使用泛型来解决,比较这两种方案,就可以知道泛型的优点了。 18.1.1 什么是泛型简单来说,泛型就是将类型参数化。类型参数化是指把数据类型也可 阅读全文
posted @ 2012-04-23 23:05 yoogoo 阅读(256) 评论(0) 推荐(0)
摘要: 第16章 图形编程前面编写的程序,都是使用控制台来进行数据的输入与程序的输出。这样对程序的使用者来说这样是不够美观也不够友好的。本章的主要内容是介绍Java中的图形界面编程,目前Java图形界面编程主要用的是Swing技术,本章的主要内容就是介绍Swing的基本知识。16.1 Swing概述Swing是SUN公司推出的第二代图形编程包。使用Swing技术可以开发出功能强大,界面友好的图形界面程序。Swing不仅提供了具有完善功能的组件,而且有很好的扩展性,使用开发者可以方便的完成图形界面程序的开发。 16.1.1 AWT简介说起Swing组件就不得不提AWT,AWT的Java推出的第一代图形编 阅读全文
posted @ 2012-04-23 23:04 yoogoo 阅读(1415) 评论(0) 推荐(0)
摘要: 第15章 Java输入输出流Java提供了完善的输入输出功能,即I/O功能。用于处理键盘输入、文件读取、写入以及网络传输数据等事件。Java的输入输出流是非常复杂的,本章将会对Java的文件系统、各类输入输出流以及对象序列化进行介绍。通过本节的学习读者会对Java的输入输出流有清晰的认识。15.1 I/O基础在正式介绍Java输入输出流之前需要一些基本概念的介绍。这一节的主要内容就是介绍Java中的I/O基础。主要包括流的概念,Java中流的分类以及Java的File类,通过File类可以方便的进行文件管理。学习完本节内容后就可以对Java的输入输出流机制有一个大体的了解了。 15.1.1 流 阅读全文
posted @ 2012-04-23 23:04 yoogoo 阅读(1903) 评论(0) 推荐(0)
摘要: 第14章 Applet程序Java中有两种类型的程序,Application(应用程序)和Applet(小程序)。前面写的程序都属于应用程序。实际上,在Java发展的早期,是Applet带来了Java如此大甚至有些言过其实的名声,Sun公司希望通过Applet可以把应用程序都放在网上,这样用户不用安装就能使用。不过由于目前的网络速度的限制以及其它一些因素Applet并不能做到这一点,甚至随着其它语言的出现发展,Applet的本来一些应用也被取代了。反倒是在Web开发方向,Java大展身手。虽然如此,本书还是单独拿出一章来讲解Java的Applet。14.1 Applet基础 Java Appl 阅读全文
posted @ 2012-04-23 23:03 yoogoo 阅读(1543) 评论(0) 推荐(0)
摘要: 第13章 多线程前面编写的程序都是单线程的。程序都是从main方法开始按照程序编写顺序的执行一条线索。但是在现实情况中有时候需要有多个线索同时运行。这就需要用到多线程的知识,Java对于多线程提供了良好的支持。本章的主要内容是介绍线程的基础、如何创建Java线程这些基本知识。并介绍了Java中多线程的应用以及线程同步等线程知识。13.1 线程基本知识 本节主要内容是从总体上来介绍一下Java的线程。主要包括一些线程基本知识,包括什么是线程、线程与进程的区别,以及Java中的线程模型,即线程所处的各个状态。通过本节的学习读者可以对进程有一个初步的认识。13.1.1 线程与进程简单的说,进程就是执 阅读全文
posted @ 2012-04-23 23:03 yoogoo 阅读(297) 评论(0) 推荐(0)
摘要: 第10章 接口和内部类接口是为了解决无法实现多重继承而提供的一个解决方案,接口与类的定义比较类似,但是接口中没有具体的方法实现,就像是没有进行装修的房子一样,只有一个外壳方法和公有的静态方法。一个类可以通过接口来实现多重继承。10.1 接口 接口在Java中是一项比较重要的接口,它是一系列抽象方法和常量的属性集合,一个类如果实现了接口,就必须要实现接口中所定义的所有方法,而且一个类可以实现多个接口。实际上,接口只是一个类的框架,是一种完全形式上的抽象类。10.1.1 接口的概述接口是一种特殊的抽象类。前面介绍的抽象类中的方法只提供方法的原型,没有任何的方法实现。子类必须提供父类父类中的抽象方法 阅读全文
posted @ 2012-04-23 23:02 yoogoo 阅读(260) 评论(0) 推荐(0)
摘要: 第12章 异常处理世界上没有完美的事情,一个完善的程序不可能总是会准确无误的运行,它们的运行流程都是在开发人员所预料的范围之内。但是,实际却不尽人意。在程序的运行过程中可能会因为各种原因而导致出现错误,例如用户的误操作,各种环境原因等。Java为此提供了异常处理机制。通过这套机制就可以将容错率提高。本章就主要介绍Java的异常处理机制。12.1 异常Java中的异常处理是提前给出程序中有可能会出现的异常,这样就可以通过这种容错机制使程序可以继续正常运行。本小节就主要介绍异常出现的原因、异常的分类。12.1.1 什么是异常异常就是在程序运行过程中所出现的不正常现象。例如在做除法运算时,0是不能被 阅读全文
posted @ 2012-04-23 23:02 yoogoo 阅读(277) 评论(0) 推荐(0)
摘要: 第11章 面向对象编程技巧初探 面向对象技术比较吸引人的地方就在于它的代码复用方面的能力。在面向对象的编程语言中,代码的复用通常是通过重复调用一个方法来实现的,这种方式就是Java中“组合”的前身。本章就介绍这种技术的语法以及其他面向对象编程相关的技术。11.1.1 组合概述 组合就是指将已经存在的类型作为一个新建类的成员变量类型,并且使得新类型具备现有类的功能。这种模式也叫做工厂模式,例如,在大型的汽车制造厂,就是分为不同的流水线,然后将所有零配件生产商所制造的零件组装起来。使用这种生产方式可以大大的提高产品的合格率,这样就比一个厂家生产全部的零配件效率要高。11.1.2 组合语法组合的类通 阅读全文
posted @ 2012-04-23 23:01 yoogoo 阅读(263) 评论(0) 推荐(0)
摘要: 第10章 接口和内部类接口是为了解决无法实现多重继承而提供的一个解决方案,接口与类的定义比较类似,但是接口中没有具体的方法实现,就像是没有进行装修的房子一样,只有一个外壳方法和公有的静态方法。一个类可以通过接口来实现多重继承。10.1 接口 接口在Java中是一项比较重要的接口,它是一系列抽象方法和常量的属性集合,一个类如果实现了接口,就必须要实现接口中所定义的所有方法,而且一个类可以实现多个接口。实际上,接口只是一个类的框架,是一种完全形式上的抽象类。10.1.1 接口的概述接口是一种特殊的抽象类。前面介绍的抽象类中的方法只提供方法的原型,没有任何的方法实现。子类必须提供父类父类中的抽象方法 阅读全文
posted @ 2012-04-23 23:00 yoogoo 阅读(197) 评论(0) 推荐(0)
摘要: 第9章 继承和多态继承和多态是Java面向对象语言设计中的两个重要的特点。所谓继承,就是在现有类的基础上来构建新类以满足新的要求。本章就主要介绍Java中的继承和多态。9.1 派生类 在继承的过程中,新的类继承原来类的方法和实例变量,并且能够添加自己的方法和实例变量,这就是继承。子类回去继承父类中的一些方法和属性,这就相当于显示生活中的父子关系一样。所以将这种机制称之为继承,而且其中的子类也被称作为派生类。9.1.1 继承概述继承时面向对象的基本机制。利用集成可以先创建一个公共类,这个类具有多个项目的共同属性,然后一些具体的类继承该类,同时会加上自己特有的属性。父类又称为超类或者是基类,子类又 阅读全文
posted @ 2012-04-23 23:00 yoogoo 阅读(282) 评论(0) 推荐(0)
摘要: 第7章 数组数组是一种复合型的数据类型,它具有相同类型的数据集合。数组中的每一个数据称为数组的元素,数组元素是有序的。在本章中,主要介绍数组的知识,其中包括数组的定义、创建数组、数组的使用以及多维数组。7.1 数组基础 数组是一种线性表,是一组数据的集合。用户可以比较方便的获取到这个线性表中的任何一个元素,并且可以对其中的元素值进行修改。数组中的元素会根据下标的顺序在内存中按照顺序来进行存放。本节中就主要介绍数组的基础知识。7.1.1 数组概述数组就是一组数的集合,集合中的数据必须是相同类型的。并且每一个数组都有一个名字,也就是数组名,用户可以通过数组名来访问数组中的元素。7.1.2 创建数组 阅读全文
posted @ 2012-04-23 22:59 yoogoo 阅读(408) 评论(0) 推荐(0)
摘要: 第8章 类和对象Java语言是一种纯面向对象的语言,如果要使用Java进行面向对象编程,首先就要建立面向对象思想。8.1 类 面向对象的程序都是由对象来组成的。所以在研究对象时首先要考虑对象的属性和行为。而有一些不同的对象却会表现出相同的属性或行为,例如苹果橘子等。通常将属性及行为相同或者相似的一些事物诚挚为类。类就是事物的集合和抽象。它所代表的是这类事物所共有的一些行为和属性8.1.1 类的一般形式类是对象的一般形式,Java程序的编写,就是将这些对象的共同点抽取出来,然后使用程序语言的形式表达出来。例如把一个人看作是一个对象,把他作为一个类抽象出来,那么这个人就可以看作是人类的一个对象。8 阅读全文
posted @ 2012-04-23 22:59 yoogoo 阅读(252) 评论(0) 推荐(0)
摘要: 第6章 程序控制语句编程语言都是使用控制语句来执行程序的过程,进行程序状态的改变。Java主要的控制语句有三种,选择语句、循环语句、跳转语句。本章会对这三种语句的各种形式进行详细的介绍,在最后一节中举了两个例子作为程序控制语句的实例。6.1 选择结构选择结构是指根据程序运行时候产生的结果或者用户的输入条件执行相应的代码。在Java中有两种选择语句可以使用:if和switch。使用它们可以根据条件来选择接下来要干什么。本节会对这两种形式语句进行介绍。6.1.1 if语句if语句是最简单的选择语句。它可以控制程序在两个不同的路径中执行。下面是if语句的一般形式:if(条件){//语句块1}else 阅读全文
posted @ 2012-04-23 22:58 yoogoo 阅读(2225) 评论(0) 推荐(0)
摘要: 第5章 运算符前一章讲了Java的数据类型,通过对这些数据进行有效的计算来完成程序,如何准确高效的进行运算,就需要了解Java的运算符。Java提供了相当丰富的运算符系统,主要分为以下四类:算术运算符、位运算符、关系运算符、逻辑运算符。这些运算符之间有优先级的关系,通过括号的组合而成的表达式可以完成复杂的计算。5.1 算术运算符 算术运算符一般在数学表达式中使用,使用方法和代数中的使用方法相同,表5.1列出了各种算术运算符。5.1.1 基本算术运算符基本算术运算符包括加、减、乘、除,可以对所有数字类型进行操作。注意一点,如果整数进行除法运算,得到的结果也是整数,小数部分会被抛弃掉。5.1.2 阅读全文
posted @ 2012-04-23 22:57 yoogoo 阅读(361) 评论(0) 推荐(0)
摘要: 第4章 基本数据类型与字符串Java语言中的数据类型和其它高级编程语言很相似,若读者熟悉其他的语言,应该会熟悉其中的一些内容和不过即使读者已经知道这些概念,仍需要学习用Java方式来表达这些概念。这一章的主要内容是Java中各种基本数据类型的表示以及它们的表示范围与使用,本章还介绍了字符串类型在Java中的表示,Java中字符串的表示与其它的语言有很大区别,需要读者重点学习。4.1 数据类型 首先读者要先记住一句话,Java是一门强类型语言。这句话的意思就是,每个变量都有一个类型。每个表达式也有一个类型,这些类型都被严格的定义了。在赋值语句和参数传递时也要进行类型检查,确保类型兼容性,如果不能 阅读全文
posted @ 2012-04-23 22:56 yoogoo 阅读(523) 评论(0) 推荐(0)
摘要: 第3章 Eclipse简介在正式介绍Java之前,本章先要介绍一款出色的Java IDE(集成开发环境)——Eclipse。它是目前最流行的集成开发环境,使用它可以高效的完成Java的开发。尽管对于初学Java的读者来说,笔者支持用记事本或是其它文本编辑器来完成程序的编写,但是这里还是对Eclipse进行简单的介绍,读者可以自行选取。3.1 Eclipse发展历史 Eclipse是IBM的一个产品,在2001年,IBM推出它的第一个版本后,受到了广大用户的广泛批评。2001年12月,IBM做了两件改变Java IDE格局的事情。第一件是创建开源项目,IBM捐赠价值4千万美元的源码给开源社区。另 阅读全文
posted @ 2012-04-23 22:56 yoogoo 阅读(865) 评论(0) 推荐(0)
摘要: 第2章 开始Java之旅在前一章已经介绍了Java的诸多优点,相信读者已经迫不及待的想写自己的Java程序了。这一章将会先示范如何配置Java环境,设置系统变量,这样读者就可以在自己的电脑上编写Java程序了。然后本书会详细的介绍一个简单的Java程序HelloWorld的编写、编译、运行的过程。最后对这个程序进行详细的解析。2.1 安装和配置JDK 要想学习Java,必须有Java运行的环境JDK。本节主要介绍如何安装JDK,创建Java标准平台,同时描述了怎样设置Java平台所需的环境变量。读者可以根据本节的内容在自己的机器上搭建好Java开发平台,然后就可以编写运行Java程序了。2.1 阅读全文
posted @ 2012-04-23 22:55 yoogoo 阅读(305) 评论(0) 推荐(0)
摘要: 第1章 Java语言简介要想更好的学习Java,就必须要了解它的由来,产生的原因。该程序设计语言相比它的优点何在,它的发展趋势,能解决什么问题。搞清楚这些问题,才能更好的把握Java的学习方向。本章的主要内容就是对这些进行简单的介绍。1.1 Java的由来和发展 本小节的主要内容是介绍Java是如何产生的,以及Java的发展过程。并且介绍了Java本身的一些特性,主要是Java语言的优势。通过本小节的学习,读者可以对Java语言的历史有一个大体的认识,并能认识到Java语言相比于其它语言而来,优势在那里,明确以后的学习方向。1.1.1 Java的由来1991年,Sun Microsystems 阅读全文
posted @ 2012-04-23 22:54 yoogoo 阅读(445) 评论(0) 推荐(0)