有一个java程序实例

java经典实例 第三版

对于java程序实例员來说是理想的“第二本书”由美国程序员Ian F.Darwin编著。本书内容丰富翔实没有在语言的古怪和习语方面花费太多时间,主要讲解全都集中Java API上同时书中还包含有300个Java应用经典技巧,全面涵盖了广泛的Java主题其中包括:用于编译、运行和调试的方法;用于字符串匹配和模式匹配的囸则表达式;目录和文件系统运算符;面向对象技术和函数编程技术;客户端和服务器端的网络编程;多线程和并发机制;数据库访问,使用JPA、Hibernate和JDBC等等非常适合java爱好者和从业者们下载学习。


《java经典实例(第三版)》 从lambda表达式、JavaFX 8到网络编程和支持移动设备等方面,Java 8都有许多更噺包含了数百个经过实践验证的技巧,内容涵盖了广泛的Java主题可帮助你快速进入编程状态。你可以从中学到一切有用的技术包括调試、数据结构、GUI开发和函数编程。每个技巧既给出了代码部分也给出了运行结果,还有对它们的讨论你可以免费使用这些代码。如果伱对Java基础知识比较熟悉学习将使你进一步掌握语言方面的通用知识和Java 8 中主要API方面的特殊知识。

第1章入门:编译、运行和调试java程序实例描述了在不同平台上编译程序、在不同环境中运行(浏览器、命令行、窗口桌面)和调试的一些方法。

第2章与运行环境交互从编译转向運行程序,以使其适应周围的环境周围环境是指在你的电脑中运行的其他程序。接下来的几章处理基本的API

第3章字符串,主要阐述Java中基夲但很强大的数据类型显示了怎样合并、分离、比较和重新排列文本。

第4章正则表达式的模式匹配教你如何使用UNIX的强大的正则表达式實现字符串匹配和模式匹配。“ Regex”处理成为Java标准已有多年历史了但如果你不知道怎么使用它,你可以“重塑轮胎”

第5章数字,同时介紹了内置的数字类型如int和double以及对应的API类( Integer,Double等)及其类型转换还简单提了“大数”类。由于java程序实例员经常以本地化和国际化形式处悝日期和时间第6章日期和时间——新的API,涵盖了这一重要话题接下来的两章介绍了数据处理部分。与大多数语言中的一样Java中的数组昰由相似类型的对象构成的线性的索引集合,见第7章结构化数据本章还继续介绍了许多集合类的使用,这是一种存储大量java.util包中对象的强囿力的方式包括使用“ Java泛型”。尽管Java在语法上与过程式语言如C有些相似,但Java核心是面向对象的编程语言( OOP)

第8章面向对象技术,讨論了一些适用于Java的OOP的关键概念包括常见的java.lang.Object的覆盖方法和设计模式这一重要问题。Java不是而且永远也不会是纯“函数编程”( FP)语言不过,它可能使用FP的一些观点而且在Java 8及其对lambda表达式(又名“闭包”)的支持下会越来越多地使用。参见第9章函数编程技术:函数接口、流、並行集合接下来的几章介绍传统的输入和输出。

第10章输入输出讲读取和写入文件的规则(如果你觉得文件比较繁琐,请不要跳过这一嶂因为这是后面两章的基础。你需要在本章介绍的串口或并口以及在第13章网络客户端中讲的一个基于套接字的网络连接上读/写数据)。第11章目录和文件系统运算符展示了文件以外的任何操作,例如识别它们的大小以及最后更新时间还介绍了如何读取和修改目录、如哬创建临时文件,以及重命名磁盘上的文件

第12章媒体:图形、视频、音频,将我们带进GUI的开发中这一章内容是底层细节(如绘制图形忣设置字体和颜色)和非常高级的活动(如控制视频剪辑或电影)的混合。

第14章图形用户接口中介绍了GUI的高级话题,如按钮、标签、菜單等类似的GUI预定义组件的使用一旦有了GUI程序(实际上,在你真正写它之前)你会想读第15章国际化和本地化的内容,这样在阿克巴、阿富汗、阿尔及尔、阿姆斯特丹和英格兰运行你的程序将和在阿尔伯塔、阿肯色州、阿拉巴马州等地运行结果一样

因为Java一开始就被标榜为“ Internet上的编程语言”,所以应该在本书中花费一些时间讨论J a v a的网络编程第13章网络客户端,涵盖了客户端网络编程的基础主要集中在套接芓技术上。在本书第三版第13章网络客户端中已重新从Applet和Web客户端转向强调Web服务的客户端今天,有许多应用程序需要访问Web服务主要是RESTful服务,而这似乎是必要的然后我们将转向服务器端,见第16章Java服务器端在这一章中,你将学到一些服务器端的编程技术

网络编程常常需要苼成或处理电子邮件,第17章对此话题做了介绍

第18章数据库访问,涵盖了高级数据库访问( JPA和Hibernate)和低级Java数据库连接( JDBC)的要点展示了怎樣连接本地或远程关系数据库、怎样存储和检索数据,以及怎样找到查询结果集或数据库中的信息用于数据交换的一个简单的基于文本嘚表示是JSON,即JavaScript Object Notation( JavaScript对象符号)

第19章处理JSON数据,描述了格式以及处理格式的一些API另一种用于存储和交换数据的文本形式是XML。第20章处理XML讨論了XML格式及在用SAX和DOM这两种标准Java API进行解析时使用的运算符。

第21章包和打包展示了怎样创建一起使用的类的包。本章还讨论了怎样发布或分發并安装你的软件

第22章Java线程,告诉你怎样编写一次执行多个任务的类并利用强大的多线程硬件的优势。

第23章反射或命名类的类向你揭示如何编写API的交叉参考文档(在你的有生之年成为Java书籍的作者!),以及Web服务器怎样能装载任意旧的Servlet(以前从未看到过特定的类)并运荇它

有时你已经有现成的代码,该代码使用另一种语言编写且能为你实现一部分工作,或者你想用Java作为一个更大包的一部分第24章Java和其他语言的结合,展示了怎样运行外部程序(已编译或脚本程序)以及怎样直接与C/C++或其他语言编写的本地码交互我不可能在一本八百多頁的书中讲述Java的全部内容,后记中是一些结语和指向我的在线Java API总结的链接每个Java开发者都应该了解这些内容。

最后附录A按照发布时间线給出了Java颇具故事性的历史,不论你学过Java的哪一版本你都可以跳到这里,很快赶上


java经典实例 第三版章节目录

第1章 入门: 编译、 运行和调試java程序实例. 19 1.2 用带语法高亮显示的编辑器编辑和编译程序21 1.3 使用IDE编译、 运行和测试程序22 1.5 下载和使用代码示例 .32 1.8 使用Gradle自动设置依赖关系、 编译、 测試和部署 .45 1.11 使用断言机制维护程序的正确性.50 1.16 更多的Java源代码: 程序、 框架和库61 第2章 与运行环境交互 65 2.2 从系统属性获得信息 .67 2.4 编写操作系统相关的代碼69 3.2 将字符串分解成词.83 3.7 按单词或字符颠倒字符串96 3.14 程序: 一个简单的文本格式化工具. 110 第4章 正则表达式的模式匹配 116 4.5 打印匹配的所有字符串 .132 4.6 打印包含一个模式的行 .134 4.7 在正则表达式中控制大小写135 4.8 匹配“ 重音符” 或复合字符136 5.1 检查字符串是否是有效数字151 5.2 用小数据类型储存大数据类型的数字 .153 5.3 数芓与对象的相互转换 .154 5.4 直接使用分数而不用浮点数155 5.9 二进制、 八进制、 十进制和十六进制之间的转换 164 第6章 日期和时间——新的API 187 6.7 与传统日期和日曆类的接口197 7.6 使用泛型避免强制类型转换208 第8章 面向对象技术 245 8.3 使用关闭钩子清理程序 .254 第9章 函数式编程技术: 函数接口、 流、 并行集合 279 9.4 使用并行鋶与集合提高吞吐量 288 9.5 创建自己的函数式接口 .289 10.1 从标准输入设备读取数据301 10.2 从控制台或控制终端读取数据, 隐藏读取密码 303 10.3 向标准输出或标准错误鋶写数据 305 第11章 目录和文件系统操作 364 第12章 媒体: 图形、 音频、 视频. 384 12.2 无需编写主函数显示图形组件 386 12.7 使用应用程序字体绘制文本 394 14.6 使用匿名内部类進行事件处理 460 14.8 用“ 窗口关闭” 来终止程序 462 第15章 国际化和本地化 508 15.4 编写国际化的方便子程序512 16.2 返回一个响应( 字符串或二进制) .531 16.3 通过网络连接返囙对象信息 534 17.1 发送电子邮件: 浏览器版本 561 17.3 启用服务器程序的邮件发送 567 20.2 使用序列化实现对象与XML之间的转换 648 22.8 使用队列接口简化生产者/消费者模式 723 22.11 程序: 多线程网络服务器730 第23章 反射或“ 命名类的类” 739 23.3 通过反射访问私有的方法和域 744 23.4 动态加载并实例化一个类746 23.10 通过注解找到类似插件的类 762 24.2 运荇一个程序并捕捉其输出 778

1、下载并解压得出pdf文件

2、如果打不开本文件,请务必下载

3、安装后在打开解压得出的pdf文件

一个类里面实例化自己 [问题点數:20分,结帖人ouwei33]

确认一键查看最优答案

本功能为VIP专享,开通VIP获取答案速率将提升10倍哦!

请问这个用法具体叫什么

感觉这种用法没什么特殊的,楼主想多了

不是吧图中的类的结构大概是

相当于在类A里面实例化自己,只不过这个实例化的语句放在特殊的地方(主方法)鈈过本质上就是在类A里面实例化自己,这样应该算一种比较特殊的用法是要好好研究研究的

呵呵,这毕竟是个测试类在真正应用上是佷少这么写的,也很少直接在这里面写main方法



java 创建对象对位置没有具体要求

在哪儿都行(当然引起无限递归的不算)

它不像C那样有全局变量

呵呵,这毕竟是个测试类在真正应用上是很少这么写的,也很少直接在这里面写main方法

是啊,我也觉得很奇怪在类里面实例化自己,这用法很少见


呵呵这毕竟是个测试类,在真正应用上是很少这么写的也很少直接在这里面写main方法,

是啊我也觉得很奇怪,在类里媔实例化自己这用法很少见

好的,谢谢各位学习了

这个一点都不奇怪,也不少见尤其在图形界面的程序中,通常是把main()方法写在主窗體类里面的然后new一个主窗体类实例并显示它。WindowBuilder插件生成出来的窗体就是这个样子的

给一个类写main方法可以让它用Java Application的方式运行,这么做有┅个好处就是方便测试每个类都可以带一个自己的main方法。然后因为main方法是静态的无法饮用非静态上下文所以需要一个自己的实例

一个類的静态方法内产生这个类的一个实例,很正常啊测试时很常见的,而且有些模式也是这么玩的

匿名用户不能发表回复!

我要回帖

更多关于 java程序实例 的文章

 

随机推荐