×
Java程序设计项目式教程

包邮Java程序设计项目式教程

¥36.3 (7.4折) ?
1星价 ¥36.3
2星价¥36.3 定价¥49.0
暂无评论
图文详情
  • ISBN:9787302484974
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:309
  • 出版时间:2018-10-01
  • 条形码:9787302484974 ; 978-7-302-48497-4

本书特色

本教材在内容的编排上做了精心的设置与选取,叙述由浅入深,循序渐进。

内容简介

本书旨在面向较大的用户范围,因此在内容编排上做了精心的安排,首先介绍Java语言的特点和开发环境设置,进而介绍java语言的编程基础,包括基本语法、流程控制和数组与字符串等。在第三、四、五章开始介绍Java语言的面向对象程序设计方法,包括封装性、继承性、多态性、异常处理以及基本类库。第六、七章介绍图形用户界面(GUI)和小程序设计(Applet),第八、九章介绍输入输出与文件处理、多线程,*后一部分内容介绍网络编程相关知识。

目录


目录



第1章Java开发


1.1Java的特点


1.2Java开发工具JDK


1.2.1JDK的安装


1.2.2JDK的环境配置


1.2.3JDK安装的目录


1.3简单的Java程序


1.3.1**个简单的程序


1.3.2修改**个程序


1.3.3Applet程序


1.3.4Scanner类


1.4Java开发工具MyEclipse


1.4.1MyEclipse软件的安装


1.4.2MyEclipse软件的应用


1.4.3利用MyEclipse建立程序


1.4.4程序目录


1.4.5简单调试并设置断点


1.4.6导入已存在的Java文件


小结


习题


第2章Java语言基础


2.1Java基础语法


2.1.1标识符


2.1.2关键字


2.1.3注释


2.1.4花括号


2.1.5分号


2.1.6空白行


2.2常量和变量


2.2.1常量


2.2.2变量


2.2.3变量的分类


2.3数据类型


2.3.1逻辑类型


2.3.2字符类型


2.3.3整数类型


2.3.4浮点类型


2.3.5数据类型转换


2.4运算符和表达式


2.4.1算术运算符


2.4.2关系运算符


2.4.3位运算符


2.4.4逻辑运算符


2.4.5赋值运算符


2.4.6条件运算符


2.5if选择语句


2.5.1简单if语句


2.5.2if/else选择语句


2.6switch语句


2.7for语句


2.8while语句


2.9do…while语句


2.10break和continue


2.11数组


2.11.1一维数组


2.11.2二维数组


2.11.3数组的应用


2.12综合实例


小结


习题


第3章面向对象技术


3.1面向对象的基本概念


3.1.1面向对象程序设计思想


3.1.2面向对象程序设计的特点


3.2类


3.2.1类的定义


3.2.2类的主方法


3.2.3成员变量与局部变量


3.2.4类的构造方法


3.3对象


3.3.1对象的创建


3.3.2对象的使用


3.3.3对象的销毁


3.4类中的方法


3.4.1类自身成员方法之间的相互调用


3.4.2类中定义带参数的成员方法


3.4.3类中定义带参数的构造方法


3.5匿名对象


小结


习题


第4章Java类和对象的高级特征


4.1包


4.1.1创建包


4.1.2使用包中的类


4.1.3系统中常见的包


4.2类的访问级别


4.3静态修饰符


4.3.1静态变量


4.3.2静态方法


4.3.3静态初始化器


4.4继承


4.4.1子类的创建


4.4.2重载和覆盖


4.4.3this和super关键字


4.5特殊类


4.5.1*终类


4.5.2抽象类


4.5.3内部类


4.5.4匿名内部类


4.6接口


4.6.1接口的定义


4.6.2接口的实现


4.6.3接口的继承


4.6.4利用接口实现类的多重继承


小结


习题


第5章Java的API


5.1API


5.2String类和StringBuffer类


5.2.1String类的初始化


5.2.2String类的常用方法


5.2.3StringBuffer类


5.3Runtime类


5.4System类


5.5日期操作类


5.5.1Date类


5.5.2Calendar类


5.5.3DateFormat类


5.5.4SimpleDateFormat类


5.6Math类


小结


习题


第6章Swing桌面开发


6.1AWT概述


6.2Swing概述


6.2.1Swing组件的类型


6.2.2JFrame类


6.3JPanel面板类


6.4基本组件


6.4.1JLabel标签类


6.4.2JButton按钮类


6.4.3JTextField文本类


6.4.4JCheckBox选择框


6.4.5JRadioButton单选按钮


6.5布局管理器


6.5.1FlowLayout


6.5.2BorderLayout


6.5.3GridLayout


6.5.4GridBagLayout


6.6综合实例


6.6.1FlowLayout布局的界面


6.6.2Swing组件的应用


6.6.3设计简易计算器


小结


习题


第7章事件处理


7.1简单实例


7.2事件类


7.3事件处理接口


7.4适配器


7.5匿名内部类


7.6ActionEvent


7.7MouseEvent


7.8KeyEvent


7.9综合实例


7.9.1ActionEvent事件的应用


7.9.2MouseEvent事件的应用


小结


习题


第8章输入输出流


8.1流的分类


8.1.1InputStream流


8.1.2OutputStream流


8.1.3Reader类


8.1.4Writer类


8.1.5流的常用类


8.2文件流


8.2.1FileOutputStream类


8.2.2FileInputStream类


8.2.3FileWriter类


8.2.4FileReader类


8.3缓冲流


8.3.1BufferedOutputStream类


8.3.2BufferedInputStream类


8.3.3BufferedWriter类


8.3.4BufferedReader类


8.4转换流


8.4.1InputStreamReader


8.4.2OutputStreamWriter


8.5数据流


8.5.1DataInputStream


8.5.2DataOutputStream


8.6Object流


8.7Print流


8.8综合实例


8.8.1文本文件复制


8.8.2缓冲技术实现文本文件复制


8.8.3MP3文件复制


8.8.4将键盘录入的数据保存到文件中


小结


习题


第9章多线程


9.1线程的概念


9.1.1进程和线程


9.1.2Java中的线程


9.2线程的创建


9.2.1继承Thread类


9.2.2实现Runnable接口


9.2.3两者的区别与联系


9.3线程的状态


9.4线程的方法


9.5线程同步


9.5.1同步代码块


9.5.2同步方法


9.5.3特殊域变量


9.5.4可重入锁


9.5.5区别和联系


9.6线程间通信


9.7线程的常用方法


9.7.1线程的sleep方法


9.7.2线程的join方法


9.7.3线程的yield方法


9.7.4线程的优先级


9.8综合实例


9.8.1生产者和消费者


9.8.2改进生产者和消费者


小结


习题


第10章网络编程


10.1网络通信


10.1.1网络的基本概念


10.1.2InetAddress类


10.1.3网络通信方式


10.2基于UDP的网络编程


10.2.1数据报


10.2.2发送数据报


10.2.3接收数据报


10.2.4UDP的简单网络编程


10.3基于TCP的网络编程


10.3.1Socket通信过程


10.3.2Socket类


10.3.3ServerSocket类


10.3.4TCP的简单网络编程


10.4综合实例


10.4.1基于UDP的聊天程序


10.4.2基于TCP的程序


小结


习题


第11章集合


11.1集合的介绍


11.1.1集合的分类


11.1.2Collection


11.2List


11.2.1ArrayList


11.2.2迭代器


11.2.3LinkedList


11.2.4Vector


11.3Set


11.3.1HashSet


11.3.2TreeSet


11.4泛型


11.5Map


11.5.1HashMap


11.5.2TreeMap


11.6综合实例


11.6.1对字符串的长度排序


11.6.2不重复输出随机录入的整数


11.6.3获取字符串中每一个字母出现的次数


小结


习题


第12章异常处理


12.1异常处理的介绍


12.2异常分类


12.2.1运行时异常


12.2.2非运行时异常


12.3异常的捕获和处理


12.4异常处理的案例


12.4.1try…catch


12.4.2try…catch…finally


12.4.3throw处理


12.4.4throws处理


小结


习题


第13章MySQL的简单介绍


13.1MySQL简介


13.2MySQL的使用


13.3HeidiSQL


13.3.1HeidiSQL的访问


13.3.2创建数据库exam


13.4JDBC


13.5Java连接MySQL数据库


13.5.1找到JAR包


13.5.2读取db.properties文件


13.5.3数据库的数据处理


小结


习题


第14章简单考试系统


14.1考试系统的目的


14.2系统分析


14.3数据库分析


14.4详细设计


14.4.1客户端的配置


14.4.2entity包


14.4.3main包


14.4.4service包


14.4.5ui包


14.4.6dao包


14.5界面设计


14.5.1欢迎界面


14.5.2登录界面


14.5.3考试界面


14.5.4答题界面


14.5.5考试结果


14.6导入考试系统


小结


参考文献


附录习题部分答案


展开全部

节选

第3章面向对象技术 【教学提示】 在日常生活中,很多事情需要事先设计好模板并进一步制作,比如制作衣服首先需要一份设计图,根据图样来裁剪布料制作。在Java语言中,类好比日常生活中描述的一个物品,而对象好比制作完成后实实在在的东西。本章将介绍面向对象的基本概念,类的定义,类成员变量的定义和方法的定义,方法参数等知识。 本章主要内容:  面向对象的基本概念;  类的定义;  类的主方法和构造方法;  成员变量和局部变量的区别;  对象的生命周期;  匿名对象。 3.1面向对象的基本概念 面向对象思想*初起源于20世纪60年代中期的仿真设计语言Simula Ⅰ。它模拟现实世界中的事物,把软件系统抽象成各种对象的集合,以对象为*小系统单位,这种思想更接近人类的自然思维,给程序开发人员更加灵活的创造思维空间。 3.1.1面向对象程序设计思想 传统的程序采用结构化的程序设计思想,即面向过程的程序设计思想,典型的编程语言即C语言,针对某一需求,自顶向下,逐步细化,将需求通过模块的形式来实现,然后对模块中的问题进行结构化编码。这种方式是针对具体问题来求解,然而当用户的需求不断增加,软件规模不断变大,传统的面向过程的开发方式逐渐暴露出许多不足,如软件开发周期长、后期工程维护困难等。20世纪80年代后期,人们提出了面向对象(Object Oriented Programming,OOP)的程序设计方式。面向对象程序设计方法是指用面向对象的方法指导整个程序设计的全过程。所谓面向对象是指以对象为中心,分析、设计及构造应用程序的机制,将数据和数据处理的方法紧密地结合在一起形成类,而再将类实例化,就形成对象。在面向对象的程序设计思想中,不再需要考虑数据结构和功能函数,只要关注对象就可以了。 举一个简单的例子便于读者理解这两种编程方式。假如想做烤鸡,按照传统的做法,是将一只鸡处理干净后,在里、外面都刷上适当的调味料,静置几个小时后,用烤架架起放在烤箱中,设置好温度进行烤制,并在烤制过程中每间隔一段时间翻转并刷调料,直至烤熟为止,这种做法就是面向过程模式。但如果制造出一台新型的全自动化“烤鸡”机器,只要在这个机器指定的入口扔一只鸡进去,这台机器运作后就会在另一个出口输送出一只香喷喷的烤鸡,这种做法就是面向对象模式。很明显,面向过程的烤鸡方法,采用的是按顺序按步骤制作。我们将这些步骤抽取出关键词对应编程的术语,每个关键词代表一个功能函数: 拔毛→清洗→刷调味料→静置→架烤架→翻转→刷调味→取出。再来看面向对象方式制作的烤鸡: 制造机器→放入鸡→取出烤鸡,就这么简单,不必理会机器内部是怎么运作的,只要知道这台机器的用途是制作烤鸡,操作方法是往入口丢一只鸡进去,再从出口拿这只鸡出来就行。面向过程方式不用设计机器,操作起来比较便利,但如果要进行量产,面向对象方法的优势就显现出来了。这里的自动化机器的制作,就好比定义面向对象程序设计中的类(Class),制作成的每只鸡可看作一个对象,在机器内部来设定上面所述的那些功能方法(行为)。而在机器中预先加入固定配比的调料(属性),可以得到各种口味的烤鸡(对象)。由此可见,对象还具有属性和行为。在面向对象程序设计中,使用属性来描述对象的状态,使用方法来处理对象的行为。 3.1.2面向对象程序设计的特点 面向对象编程更加符合人的思维模式,可以高质量、高效率地编写程序,并且程序后期易维护、易扩展。更重要的是,面向对象程序设计更有利于系统开发时的责任分工,能有效地组织和管理一些比较复杂的大型应用程序开发。面向对象程序设计的特点主要有封装性、继承性和多态性。 1. 封装性 封装是面向对象的主要特征之一,是一种信息隐蔽技术,它体现于类的说明,是对象的重要特性。封装使数据和加工该数据的方法(函数)封装为一个整体,以实现独立性很强的模块,使得用户只能见到对象的外特性(对象能接收哪些消息,具有哪些处理能力),而对象的内部特性(保存内部状态的私有数据和实现加工能力的算法)对用户是隐蔽的。封装的目的在于把对象的设计者和对象的使用者分开,使用者不必知晓行为实现的细节,只需用设计者提供的消息来访问该对象。 2. 继承性 继承性是子类自动共享父类的非私有的数据和方法的机制。它由类的派生功能体现。一个类直接继承其他类的全部描述,同时可修改和扩充。继承具有传递性。继承分为单继承(一个子类只有一个父类)和多重继承(一个子类有多个父类)。类的对象是各自封闭的,如果没有继承性机制,则类对象中数据、方法就会出现大量重复,继承不仅支持系统的可重用性,而且还促进系统的可扩充性。例如,已经存在手机类,该类中包括两个方法,分别是接听电话call()和发短信message(),现在再定义一个智能手机类,就可以先继承手机类,实现手机类的两个方法,然后再创建两个新的方法,包括拍照方法photograph()和玩游戏的方法playgame(),如图31所示。由此可见,继承简化了新类的设计。 图31手机类和智能手机类的类图 3. 多态性 对象根据所接收的消息而做出动作。同一消息为不同的对象接收时可产生完全不同的行动,这种现象称为多态性。利用多态性用户可发送一个通用的信息,而将所有的实现细节都留给接收消息的对象自行决定,因此,同一消息即可调用不同的方法。例如,Print消息被发送给一个图或表时调用的打印方法与将同样的Print消息发送给一个正文文件而调用的打印方法会完全不同。多态性的实现受到继承性的支持,利用类继承的层次关系,把具有通用功能的协议存放在类层次中尽可能高的地方,而将实现这一功能的不同方法置于较低层次,这样,在这些低层次上生成的对象就能给通用消息以不同的响应。例如,定义一个动物类,类中存在一个动物行为叫声shout(),接着定义两个动物类的子类——猫和狗,这两个类都重写了动物类中的shout()方法,实现了自己的叫声行为的处理,如图32所示。 由此可见,当动物类执行shout()时不用判断执行哪个类的shout()方法,因为Java编译器会自动根据所传递的参数进行判断,根据运行时对象类型的不同执行不同的操作。多态性丰富了对象的内容,扩大了对象的适应性。 图32动物类之间的继承关系 3.2类 Java语言是面向对象的程序设计语言,引入类和对象的概念,类是用来创建对象的模板,它包含被创建对象的属性和方法的定义。因此要学习Java编程就必须要学会类的定义方法,即怎样用Java的语法去描述一类事物共有的属性和行为。而对象的属性通过变量来刻画,也就是类的成员变量,而对象的行为通过方法来实现,也就是成员方法。方法可以操作属性形成一定的算法来实现一个具体的功能。类把属性和方法封装成一个整体。 3.2.1类的定义 类是Java的核心,所有的Java程序都是基于类的。类是一个抽象的东西,描述的是一个物品的完整信息,比如房子和图纸的关系,在Java里,图纸就是类,定义了房子的各种信息,而房子是类的实体。 1. 类的一般结构 定义类也可称为声明类,它的主要内容包括成员变量和成员方法,成员变量描述的是对象的属性,成员方法描述的是对象的行为。下面先介绍类的一般结构,类是通过关键字class来定义的,在class后面加上类的名称,就创建了一个类,在类里面可以定义类的成员变量和成员方法,类的一般结构如下。 [类修饰符] class 类名称 { //~~~~~~~~声明成员变量~~~~~~~~~~~ [修饰符] 数据类型成员变量名称; … //~~~~~~~声明成员方法~~~~~~~~~~~ [修饰符] 返回值的数据类型 方法名(参数1,参数2,…) { 语句序列; return [表达式]; } … } 其中,class前方的类修饰符是可选项,用来说明类的特殊性质,具体修饰符的含义如表31所示。 表31类修饰符 修饰符含义 public将一个类声明为公共类,它可以被任何对象访问,一个程序的主类必须是公共类(唯一的访问控制符) abstract将一个类声明为抽象类,没有实现的方法,需要子类提供方法的实现 final将一个类声明为*终类即非继承类,表示它不能被其他类所继承 friendly友元类型,默认的修饰符,只有在相同包中的对象才能使用这样的类 2. 类的成员变量 Java语言用成员变量来表示类的状态和属性,声明成员变量的基本语法格式如下: [修饰符] 变量类型 变量名 [=初值] 其中,[]中的修饰符是可选项,修饰符的含义如表32所示。 表32成员变量的修饰符含义

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航