JAVA及其相关
-
JAVA实用程序设计100例袁海燕,王文涛编著本书通过100个精选的实例深入浅出地讲解了Java程序设计的主要应用,涵盖图形用户界面、Applet编程、多媒体处理、输入输出系统、网络编程、数据库编程、安全编程、手机程序设计等内容。 本书实例覆盖面广,具有较强的示范性和实用价值,适合于已经初步掌握Java编程概念及方法的读者阅读。 -
Java编程思想(美)Bruce Eckel著;陈昊鹏,饶若楠等译;陈昊鹏译内容简介目录从本书获得的各项大奖以及来自世界各地的读者评论中,不难看出这是一本经典之作。本书作者有多年的教学经验,对C、C++、Java语言都有独到、深入的理解。因此他非常了解如何教授Java语言这门课程,也非常明白语言教学中的难点及人们的困惑。作者以通俗易懂及小而直接的示例解释了一个个晦涩抽象的概念,精心选取“对读者理解Java语言来说最为重要”的部分编写成书。同时又在随书光盘中提供了大量参考材料—这也是本书绝对物超所值的地方。随书光盘没有包含本书的源代码(可以从支持网站www.MindView.net免费下载),而是提供了大量作者讲授的讨论课内容及本书的前2版内容。本书内容丰富—从Java的基础语法到最高级特性,适合各层次的Java程序员阅读,同时也是高等院校讲授面向对象程序设计语言及Java语言的绝佳教材。第1章对象导论11.1抽象过程11.2每个对象都有一个接口21.3每个对象都提供服务41.4被隐藏的具体实现51.5复用具体实现51.6继承:复用接口61.7伴随多态的可互换对象91.8对象的创建、使用和生命期121.8.1集合与迭代器131.8.2单根继承结构141.8.3向下转型与模板/泛型151.8.4确保正确清理151.9异常处理:处理错误161.10并发性171.11持久性171.12Java与Internet181.12.1Web是什么181.12.2客户端编程191.12.3服务器端编程231.12.4应用231.13Java为什么成功241.13.1系统易于表达、易于理解241.13.2类库的巨大影响力241.13.3错误处理241.13.4大型程序设计241.14Java与C++251.15总结26第2章一切都是对象272.1用引用操纵对象272.2必须由你创建所有对象282.2.1存储到什么地方282.2.2特例:基本类型292.2.3Java中的数组302.3永远不需要销毁对象302.3.1作用域302.3.2对象的作用域312.4创建新的数据类型:类312.5方法、参数和返回值332.6构建一个Java程序352.6.1名字可见性352.6.2运用其他构件352.6.3static 关键字362.7你的第一个Java程序372.8注释和嵌入式文档392.8.1注释文档392.8.2语法392.8.3嵌入式HTML402.8.4一些标签示例412.8.5文档示例422.9编码风格432.10总结432.11练习43第3章控制程序流程453.1使用Java操作符453.1.1优先级453.1.2赋值453.1.3算术操作符483.1.4自动递增和递减503.1.5关系操作符523.1.6逻辑操作符533.1.7按位操作符553.1.8移位操作符563.1.9三元操作符 if-else593.1.10逗号操作符603.1.11字符串操作符 +603.1.12使用操作符时常犯的错误613.1.13类型转换操作符613.1.14Java没有“sizeof”633.1.15再论优先级633.1.16操作符小结643.2执行流程控制733.2.1true和false733.2.2if-else733.2.3return743.2.4迭代753.2.5do-while763.2.6for763.2.7break和 continue783.2.8switch833.3总结863.4练习86第4章初始化与清理894.1用构造器确保初始化894.2方法重载914.2.1区分重载方法934.2.2涉及基本类型的重载934.2.3以返回值区分重载方法984.2.4缺省构造器984.2.5this关键字994.3清理:终结处理和垃圾回收1024.3.1finalize()的用途何在1034.3.2你必须实施清理1034.3.3终结条件1044.3.4垃圾回收器如何工作1054.4成员初始化1074.4.1指定初始化1084.4.2构造器初始化1094.5数组初始化1154.6总结1214.7练习122第5章隐藏具体实现1255.1包:程序库单元1255.1.1创建独一无二的包名1275.1.2定制工具库1295.1.3用 import改变行为1305.1.4对使用包的忠告1305.2Java访问权限修饰词1315.2.1包访问权限1315.2.2public:接口访问权限1315.2.3private: 你无法访问1335.2.4protected:继承访问权限1345.3接口和实现1355.4类的访问权限1365.5总结1385.6练习139第6章复用类1416.1组合语法1416.2继承语法1446.3结合使用组合和继承1486.3.1确保正确清理1496.3.2名称屏蔽1526.4在组合与继承之间选择1536.5protected关键字1556.6增量开发1566.7向上转型1566.8final关键字1586.8.1final 数据1586.8.2final 方法1616.8.3final 类1636.8.4有关final的忠告1636.9初始化及类的加载1646.10总结1666.11练习166第7章多态1697.1再论向上转型1697.2转机1727.2.1方法调用绑定1727.2.2产生正确的行为1737.2.3可扩展性1757.2.4缺陷:“覆盖”私有方法1787.3抽象类和抽象方法1797.4构造器和多态1827.4.1构造器的调用顺序1827.4.2继承与清理1847.4.3构造器内部的多态方法的行为1867.5用继承进行设计1887.5.1纯继承与扩展1897.5.2向下转型与运行时类型识别1917.6总结1927.7练习193第8章接口与内部类1958.1接口1958.1.1Java中的多重继承1988.1.2通过继承来扩展接口2008.1.3群组常量2028.1.4初始化接口中的字段2038.1.5嵌套接口2048.2内部类2078.2.1内部类与向上转型2088.2.2在方法和作用域内的内部类2108.2.3匿名内部类2118.2.4链接到外部类2158.2.5嵌套类2168.2.6引用外围类的对象2188.2.7从多层嵌套类中访问外部类的成员2198.2.8内部类的继承2208.2.9内部类可以被覆盖吗2208.2.10局部内部类2228.2.11内部类标识符2238.3为什么需要内部类2248.3.1闭包与回调2268.3.2内部类与控制框架2288.4总结2338.5练习233第9章通过异常处理错误2359.1基本异常2359.2捕获异常2379.2.1try块2379.2.2异常处理程序2379.3创建自定义异常2389.4异常说明2419.5捕获所有异常2429.5.1重新抛出异常2439.5.2异常链2469.6Java标准异常2499.7使用finally进行清理2519.7.1finally用来做什么2529.7.2缺憾:异常丢失2549.8异常的限制2559.9构造器2589.10异常匹配2609.11其他可选方式2619.11.1历史2629.11.2观点2639.11.3把异常传递给控制台2659.11.4把“被检查的异常”转换为“不检查的异常”2659.12异常使用指南2679.13总结2679.14练习267第10章类型检查26910.1为什么需要RTTI26910.1.1Class对象27110.1.2类型转换前先做检查27310.2RTTI语法28210.3反射:运行时的类信息28410.4总结28810.5练习288第11章对象的集合29111.1数组29111.1.1数组是第一级对象29211.1.2返回一个数组29411.1.3Arrays类29611.1.4填充数组30211.1.5复制数组30411.1.6数组的比较30511.1.7数组元素的比较30611.1.8数组排序30811.1.9在已排序的数组中查找31011.1.10对数组的小结31111.2容器简介31111.2.1容器的打印31211.2.2填充容器31311.3容器的缺点:未知类型31911.3.1有时候它也能工作32011.3.2制作一个类型明确的ArrayList32211.4迭代器32311.5容器的分类法32611.6Collection的功能方法32811.7List的功能方法33111.7.1使用LinkedList制作栈33411.7.2使用LinkedList制作队列33511.8Set的功能方法33611.9Map的功能方法33911.9.1SortedMap34311.9.2LinkedHashMap34411.9.3散列法与散列码34511.9.4覆盖hashCode()35311.10持有引用35611.11再论迭代器36011.12选择接口的不同实现36111.12.1对List的选择36111.12.2对Set的选择36411.12.3对Map的选择36611.13List的排序和查询36811.14实用方法36911.14.1设定Collection或Map为不可修改37111.14.2Collection或Map的同步控制37211.15未获支持的操作37311.16Java 1.0/1.1 的容器37511.16.1Vector和Enumeration37511.16.2Hashtable37611.16.3Stack37611.16.4BitSet37711.17总结37811.18练习379第12章Java I/O系统38312.1File类38312.1.1目录列表器38312.1.2目录的检查及创建38612.2输入和输出38812.2.1InputStream类型38912.2.2OutputStream类型38912.3添加属性和有用的接口39012.3.1通过FilterInputStream从Input-Stream读取数据39112.3.2通过FilterOutPutStream向OutputStream写入39112.4Reader和Writer39212.4.1数据的来源和去处39312.4.2更改流的行为39312.4.3未发生变化的类39412.5自我独立的类:RandomAccessFile39412.6I/O流的典型使用方式39512.6.1输入流39712.6.2输出流39812.6.3管道流39912.7文件读写的实用工具40012.8标准I/O40112.8.1从标准输入读取40112.8.2将System.out转换成PrintWriter40212.8.3标准I/O重定向40212.9新I/O40312.9.1转换数据40612.9.2获取基本类型40912.9.3视图缓冲器41112.9.4用缓冲器操纵数据41512.9.5缓冲器的细节41512.9.6存储器映射文件41912.9.7文件加锁42212.10压缩42412.10.1用GZIP进行简单压缩42412.10.2用Zip进行多文件保存42512.10.3Java档案文件42812.11对象序列化42912.11.1寻找类43212.11.2序列化的控制43312.11.3使用“持久性”44012.12Preferences44512.13正则表达式44712.13.1创建正则表达式44712.13.2量词44812.13.3模式和匹配器44912.13.4split()45512.13.5替换操作45612.13.6reset()45812.13.7正则表达式和Java I/O45912.13.8需要StringTokenizer吗45912.14总结46012.15练习461第13章并发46313.1动机46313.2基本线程46413.2.1让步46613.2.2休眠46713.2.3优先权46913.2.4后台线程47113.2.5加入到某个线程47313.2.6编码的变体47513.2.7建立有响应的用户界面48013.3共享受限资源48113.3.1不正确地访问资源48113.3.2资源冲突48413.3.3解决共享资源竞争48613.3.4临界区49113.4线程状态49513.5线程之间的协作49613.5.1等待与通知49613.5.2线程间使用管道进行输入/输出49913.5.3更复杂的协作50113.6死锁50113.7正确的停止方法50413.8中断阻塞线程50513.9线程组50613.10总结50713.11练习508第14章创建窗口与applet程序51114.1applet基础51214.1.1applet的限制51214.1.2applet的优势51314.1.3应用框架51314.1.4在Web浏览器中运行applet51414.1.5使用Appletviewer工具51614.1.6测试applet51614.2从命令行运行applet51714.3创建按钮52014.4捕获事件52014.5文本区域52214.6控制布局52414.6.1BorderLayout52414.6.2FlowLayout52514.6.3GridLayout52514.6.4GridBagLayout52614.6.5绝对定位52614.6.6BoxLayout52614.6.7最好的方式是什么53014.7Swing事件模型53014.7.1事件与监听器的类型53014.7.2跟踪多个事件53514.8Swing组件一览53714.8.1按钮53814.8.2图标54014.8.3工具提示54214.8.4文本域54214.8.5边框54414.8.6滚动面板54514.8.7一个迷你编辑器54714.8.8复选框54814.8.9单选按钮54914.8.10组合框(下拉列表)55014.8.11列表框55114.8.12页签面板55314.8.13消息框55414.8.14菜单55514.8.15弹出式菜单56014.8.16绘图56214.8.17对话框56414.8.18文件对话框56714.8.19Swing组件上的HTML56914.8.20滑块与进度条57014.8.21树57114.8.22表格57314.8.23选择外观57414.8.24剪贴板57614.9把applet打包进JAR文件57814.10为applet签名57914.11JNLP与Java Web Start58314.12编程技术58714.12.1动态绑定事件58714.12.2将业务逻辑与用户界面逻辑相分离58914.12.3规范方式59114.13Swing与并发59114.13.1再论Runnable59114.13.2管理并发59314.14可视化编程与JavaBean59614.14.1JavaBean是什么59714.14.2使用Introspector抽取出BeanInfo59814.14.3一个更复杂的Bean60314.14.4JavaBean与同步60614.14.5把Bean打包60914.14.6对Bean更高级的支持61014.14.7有关Bean的其他读物61114.15总结61114.16练习611第15章发现问题61515.1单元测试61615.1.1一个简单的测试框架61715.1.2JUnit62615.2利用断言提高可靠性63015.2.1断言语法63015.2.2为“按契约设计”使用断言63315.2.3示例:按契约设计+白盒单元测试63515.3用Ant构建63915.3.1使所有事物自动化63915.3.2使用make的问题64015.3.3Ant:事实上的标准64015.3.4用CVS进行版本控制64315.3.5每日构建64515.4日志64515.4.1日志级别64715.4.2LogRecord64915.4.3处理器65015.4.4过滤器65415.4.5格式器65515.4.6例子:发送email报告日志消息65615.4.7通过名字空间控制日志级别65815.4.8大型工程的日志实践66015.4.9小结66215.5调试66315.5.1使用JDB调试66315.5.2图形化调试器66715.6剖析和优化66715.6.1追踪内存消费66815.6.2追踪CPU的使用66815.6.3覆盖测试66815.6.4JVM剖析接口66815.6.5使用HPROF66915.6.6线程性能67015.6.7优化指南67115.7doclet67115.8总结67215.9练习673第16章分析与设计67516.1方法学67516.2阶段0:制定计划67616.3阶段1:做什么67716.4阶段2:如何构建67916.4.1对象设计的五个阶段68016.4.2对象开发指南68116.5阶段3:构建系统核心68116.6阶段4:迭代用例68116.7阶段5:演化68216.8成功的计划68316.9极限编程68316.9.1优先编写测试68316.9.2结对编程68416.10过渡策略68516.10.1指南68516.10.2管理上的障碍68616.11总结687附录A对象的传递与返回689附录BJava编程指南723附录C补充材料731附录D资源735索引739 -
Java程序设计教程与实训侯俊杰编著Java语言目前已经成为面向对象开发的主流语言之一,应用在各个领域。今书是以Java 2技术为背景的基础教程,共分为14章,主要讲述了Java2的基本语法概念和面向对象的编程思想。本书的一大特色就是利用大量的实例向读者演示Java的编程方法和编程思想,语言通俗易懂、流畅生动。本书的开发环境是Sun公司提供的JDK1.4.2,在Sun公司的网站上可以免费下载。本书可供大专院校学生、各种培训机构的学员、网络技术开发人员,以及希望学习面向对象技术和Java实现技术的人员学习参考。 -
Enterprise JavaBeansTM(美)Richard Monson-Haefel著;林琪,杨春生译本书是EJB 2.1的权威指南,其中介绍了如何集成使用对业务对象和过程建模的软件组件来构建复杂的关键任务系统。EJB 2.1使EJB技术向前迈出了非常重要的几步,这包括:消息驱bean更为灵活,增加了时间服务,且EJB已与Web服务相互集成。 在数年前看来,Enterprise Java Beans所做出的承诺让人惊诧不已,即EJB不仅可以不加修改地在任何操作系统上运行,而且还可以在任何J2EE应用服务器上正常运转。不过,在写完EJB之后,必须要将其部署在应用服务器上,而部署EJB可能并非易事。这一版中包含有JBoss操作手册,由此可以了解到如何在开源JBoss应用服务器上部署书中给出的示例。 -
深入浅出Java Swing程序设计林智扬,范明翔,陈锦辉编著近几年Java的魅力已经扩展到各个应用角落,说它是目前最热门的程序语言一点也不为过。Java本身以互联网为发展方向,正好符合目前网络蓬勃发展的环境,加上各种功能配件推陈出新,能够迅速符合产品发展的需求,Java所带来的影响力是难以评估的,利用Java来开发系统软件,将可达到跨平台、易整合与易发展的特性。在本书中,我们将介绍Swing提供的各种窗口组件,使读者了解到Java除了具有强大的网络处理能力外,也具备了强大的窗口展示效果,让您可以很轻松地做出想要展示的组件,如菜单、表格、树状图等等。良好的系统功能若能配上良好的操作界面,将如同一颗宝石搭配完美的灯光与背景,更能突出宝石的不平凡与可贵。当然,若您对本书有任何的疑问或意见,我们非常欢迎您与作者联系(E-mail:BookQA@eknow.com.tw)。为了方便读者学习,随书附赠一张光盘,内附书中范例,敬请参阅光盘中范例文件目录(/exam)。 -
精通Hibernate刘洋编著Hibernate是目前应用最为成功和广泛的数据持久化工具。本书详细介绍了Hibernate的底层技术、使用方法、扩展特性和以Hibernate为基础的EJB3.0标准实现工具。本书包含以下内容:·数据的持久化之道·Hibernate快速上手·J2SE5.0·Java反射技术·Hibernate底层技术·JDBC编程·配置Hibernate·集成Hibernate·Hibernate的体系结构·Hibernate的编程接口·Hibernate的事务处理·Hibernate的对象关系映射·查询语言·EJB3.0标准·Hibernate的元数据本书适合各级Java程序员阅读和参考,也可作为企业和院校的相关培训教材。 -
Java语言程序设计基础桂超,赵海廷 主编,张桂刚,包琼 编著本书由浅入深地介绍了Java语言的基础知识和编程的特点,旨在培养读者运用面向对象程序设计方法去解决实际问题的能力,是学习面向对象程序设计知识的基础教材。本书实例丰富,能够增强读者对相关内容的理解。同时,本书是对作者多年教学经验的总结,并融入了一定的实际编程技术。 本书内容丰富,系统性强,可作为高等院校Java语言程序设计课程的教材,也可供从事软件开发和应用的人员参考。 -
Java项目开发实践雷之宇主编;孙颖,雷鸣宇,赵宇阳编著Java语言及其体系结构使“编写一次,随处运行”的程序成为现实,也使各种终端设备以同样的方式访问系统成为可能。本书用一些大家感兴趣的内容组织实例,从实例所涉及的知识点开始讲解,逐步切换到代码原型的介绍,最终呈现给大家一个完整实例。本书的另一个特点是所有的实例均由组件构架而成。对初学者来说,只要通过简单的组件调用,就可以实现那些复杂的、令人兴奋的功能。而对于那些有经验的程序员,则可以对组件进行改造,使之适用于更多的应用系统。本书的内容涉及:“高性能数据库访问”、“文件系统访问”、“工作流引擎”、“WebService编程”以及全新的“Struts编程”。◆以实用为指导思想,用大家最关心和最常用的功能组织实例:高性能的数据库访问,网络短信、网络文件柜,WebService编程:基于MVC的Struts编程。◆所有实例均由组件技术(JavaBean)构架而成,复杂功能轻松实现。◆所使用的组件经过严格测试并在许多大型业务系统中得到了应用,组件代码全部公开,随书奉送。 -
Java网络高级编程殷兆麟,张永平,姜淑娟编著本书第1~3章介绍了网络进程通信的主要技术。其中,第1章介绍网络进程通信的基础类(InetAddress、URL、Socket等);第2章介绍Java远程方法调用RMI;第3章介绍Java与CORBA不同体系的组件间的通信技术;第4~6章主要介绍Java有关的Web技术。其中,第4章介绍Javabean技术;第5章介绍Servlet技术;第6章介绍JSP技术。第7~9章主要介绍Jaa有关的EJB及相关的技术。其中,第7章介绍JavaXML技术;第8章介绍异步消息服务技术JMS和JavaMail技术;第9章介绍利用Weblogic为服务器的EJB技术。第10章介绍Java安全体系结构、密钥、消息摘要、数字签名、访问控制、安全套接口SSL、主体身份认证JAAS和公共密钥架构PKI;第11章简明地介绍移动代理编程技术。本书可作为高校计算机应用、网络信息、电子商务技术等专业高年级学生J2EE技术、Java分布式技术、电子商务开发技术等课程教材,也可以作为Java网络编程爱好者的自学参考书. -
Java语言程序设计郎波编著《Java语言程序设计》讲授了Java语言程序设计。书中在介绍Java语言的同时,更注重Java语言的知识体系,系统地分析了Java的核心机制与基本原理。全书分为核心基础篇与应用技术篇。在核心基础篇中,论述了面向对象程序设计的基本概念、Java语言基础(包括运算符与表达式、程序流控制、数组)、Java面向对象特性、异常处理方法、AWT与AWT事件处理模型、输入/输出、Applet概念与应用。应用技术篇介绍了开发Java的高级应用技术,包括多线程、网络编程、Swing、JDBC数据库连接、J2EE技术以及Java编程规范。书中还提供了大量实例。《Java语言程序设计》具有系统性、知识性、实用性等特点,可以作为大专院校计算机、通信等专业教材,也可作为Java编程爱好者的参考书。
