-
第一章java语言基本概述
本章主要是学习JAVA的基本概述与环境搭建与应用。了解Java语言的特点;熟悉Java开发环境的搭建;掌握环境变量的配置;通过Java的简单程序来了解JAVA编程
-
●1.1Java概述
Java是一种高级语言,划分为三个技术平台
1.标准版
JavaSE是为开发普通桌面和商务应用程序提供的解决方案
2.企业版
JavaME是为开发企业级应用程序提供的解决方案
3.小型版
是为开发电子消费产品和嵌入式设备提供的解决方案,主要用于小型数字电子设备软件程序的开发
4.Java语言特点:简单性、面向对象性、安全性、跨平台性、支持多线程等特点 -
●1.2JDK的配置与应用
1.Java程序需要有开发环境。SUN公司提供了一套Java开发环境,简称JDK(Java Development Kit),它是整个Java的核心。
2.JDK包括Java编译器、Java运行工具、Java文档生成工具、Java打包工具等。
-
第二章JAVA语言基础
熟练掌握标识符的命名规范;掌握Java当中基本的数据类型;学会声明与定义变量;了解变量的作用域;熟练使用Java当中常用的运算符和表达式
-
●2.1数据类型、常量与变量
Java中的数据类型分为两类:值类型和引用类型,本节主要介绍了值类型:整型、浮点型、字符型和布尔类型。
-
●2.2运算符与表达式
本节主要介绍了Java中常用的运算符与表达式:算术运算符与算术表达式、关系运算符与关系表达式、逻辑运算符与逻辑表达式、赋值运算符与赋值表达式。
-
●2.3流程控制语句
本节主要介绍了程序的三种基本结构:顺序、分支、循环,以及实现它们的控制语句:分支语句(if语句、switch语句)、循环语句(while语句、do-while语句、for语句)。
-
●2.4数组
主要介绍了一维数组的定义与使用,以及排序算法的实现。
-
第三章面向对象基础(一)
本章主要介绍类与对象之间的关系,类的封装与使用,构造方法的定义与重载,this和static关键字的使用。
-
●3.1类的定义与创建
本节主要介绍类的定义与创建,类的封装与使用。
-
●3.2对象与构造方法
本节重点介绍构造方法的定义,构造方法的重载,this和static关键字的使用。
-
●3.3方法
本节重点介绍成员方法和静态方法的定义和使用方法。
-
●3.4包
本节重点介绍this与static关键字的使用,包的定义与使用。
-
第四章面向对象基础(二)
本章主要介绍了面向对象的继承、多态,这与第三章面向对象的封装构成了面向对象程序设计的三大特性,接着介绍了抽象类、接口,异常的概念。
-
●4.1类的继承
本节主要介绍继承的概念,重写父类方法,final关键字,super关键字的使用。
-
●4.2抽象类
本节主要抽象类的定义和使用方法。
-
●4.3接口
本节主要介绍接口的定义、使用方法以及与抽象类的区别。
-
●4.4多态
本节主要介绍多态的概念、对象的类型转换。
-
●4.5异常
本节主要介绍什么是异常,try......catch和finally,throws关键字,运行时异常以及编译时异常。
-
第五章JAVA常见 API
API,应用程序编程接口.JAVA常见的API其实就是常见JAVA类的使用。本章主要讲述了包装类、字符串类,日期和时间类,和Math、Scanner和Random类。通过本章的学习,掌握常见类的使用和方法应用。
-
●5.1字符串类
本章主要是掌握String类、StringBuffer类和StringBuilder类的的对象创建方式,以及常用的几个方法。熟练掌握类的应用,能够解决实际问题
-
●5.2日期和时间类
本知识点主要掌握
1.掌握Date类及其应用
2.熟练DateFormat类的应用
3.常见的Math、Scanner和Random等类应用
4.掌握Calendar类的应用 -
●5.3Math、Scanner和Random
本知识点主要讲授了Math、Scanner和Random类,通过对这几个常用类的学习,熟练掌握它们的基本应用。这几个类在我们的程序设计中经常用到,通过学习这几个常用类,了解他们的常用方法,提高几个类的应用能力
-
●5.4包装类
Java是面向对象的编程语言,但它也包含了8种基本数据类型,这8个基本数据类型不支持面向对象的编程机制,基本数据类型的数据也不具备“对象”的特性:没有属性、方法可以被调用。Java之所以提供这8种基本数据类型,主要是为了照顾程序员传统的习惯。 为了解决8个基本数据类型的变量不能当成Object类型变量使用的问题,Java提供了包装类( Wrapper Class)的概念,为8个基本数据类型分别定义了相应的引用类型,并称之为基本数据类型的包装类
-
第六章集合类
Java集合类存放于 java.util 包中,是一个用来存放对象的容器。能够用好集合和理解好集合对于做Java程序的开发拥有无比的好处。本章详细解释了关于Java中的集合是如何实现的,以及他们的实现原理。程序需要根据程序运行时才知道创建多少个对象。但若非程序运行,程序开发阶段,我们根本不知道到底需要多少个数量的对象,甚至不知道它的准确类型。为了满足这些常规的编程需要,我们要求能在任何时候,任何地点创建任意数量的对象,而这些对象用什么来容纳呢?我们首先想到了数组,但是数组只能放统一类型的数据,而且其长度是固定的,那怎么办呢?集合便应运而生了!
本章重点讲述了Collection接口、List接口、Set接口和Map接口,以及泛型与常用工具类。 -
●6.1集合概述
JAVA为了保存数量不确定的数据,以及保存具有映射关系的数据(也被称为关联数组),Java提供集合类。集合类主要负责保存、盛装其他数据,因此集合类也被称为容器类。所有集合类都位于java.util包下。集合里只能保存对象(实际上也是保存对象的引用变量,但通常习惯上认为集合里保存的是对象)。Java的集合类主要由两个接口派生而出:Collection和Map。Java集合大致可分为Set、List和Map三种体系,Java集合框架主要由Collection和Map两个根接口及其子接口、实现类组成
-
●6.2Collection接口
Collection接口用于表示任何对象或元素组。想要尽可能以常规方式处理一组元素时,就使用这一接口。Collection 是List和Set 的父类。并且它本身也是一个接口。它定义了作为集合所应该拥有的一些方法。Collection 它仅仅只是一个接口,而我们真正使用的时候,确是创建该接口的一个实现类。做为集合的接口,它定义了所有属于集合的类所都应该具有的一些方法。
-
●6.3List接口
List 就是列表的意思,它是Collection 的一种,即继承了 Collection 接口,以定义一个允许重复项的有序集合。该接口不但能够对列表的一部分进行处理,还添加了面向位置的操作。List 是按对象的进入顺序进行保存对象,而不做排序或编辑操作。它除了拥有Collection接口的所有的方法外还拥有一些其他的方法。
List集合代表一个有序集合,集合中每个元素都有其对应的顺序索引。List集合允许使用重复元素,可以通过索引来访问指定位置的集合元素。因为List集合默认按元素的添加顺序设置元素的索引。List作为Collection接口的子接口,当然可以使用Collection接口里的全部方法。而且由于List是有序集合,因此List集合里增加了一些根据索引来操作集合元素的方法。 -
●6.4Set接口
Set 接口继承 Collection 接口,Java 中的Set和正好和数学上直观的集(set)的概念是相同的。Set最大的特性就是不允许在其中存放的元素是重复的。根据这个特点,我们就可以使用Set这个接口来实现数据的存储需求。Set可以被用来过滤在其他集合中存放的元素,从而得到一个没有包含重复新的集合。支持Set接口两种普通的实现:HashSet 和 TreeSet以及LinkedHashSet。在更多情况下,使用 HashSet 存储重复自由的集合。同时HashSet中也是采用了Hash算法的方式进行存取对象元素的。
-
●6.5Map接口
Map用于保存具有映射关系的数据,因此Map集合里保存着两组值,一组值用于保存Map里的key,另外一组值用于保存Map里的value,key和value都可以是任何引用类型的数据。Map的key不允许重复,即同一个Map对象的任何两个key通过equals方法比较总是返回false。
key和value之间存在单向一对一关系,即通过指定的key,总能我到唯一的、确定的value。从Map中取出数据时,只要给出指定的key,就可以取出对应的value
-
第七章多线程
Java多线程是对计算机操作系统多线程的高度抽象。当然其底层都是c++,c语言。在本章节中,进程,线程,线程调度,线程间的通信及异常捕捉处理等,都是对程序运行的各种描述。在Java中,进程即是Jvm进程,主线程是我们启动的main()方法所对应的线程,子线程即是我们用户自己定义的各种线程。通过本章节的学习我们能对线程的操作和使用有一个比较清晰的掌握。
-
●7.1线程创建
本知识点主要是针对线程的基本概念和创建的两种方式进行讲解。通过本知识点的学习能够理解线程的概念,掌握线程创建的两种方式及其区别和作用。
-
●7.2线程调度
此知识点主要是对线程的生命周期,线程优先级,线程运行过程中的几种状态及其相关的方法进行讲解。通过本知识点的学习能够明确各个线程状态方法的作用及意义。
-
●7.3多线程同步
本知识点主要对线程的并发安全性展开讲授。通过本知识点的学习,明确锁的概念,死锁产生的原因,线程并发调度中Synchronized关键字的使用。通过程序运行,对线程同步的问题进行综合说明。
-
●7.4多线程通信
本知识点主要对线程间的通信进行讲解。通过本知识点的学习,了解什么是线程通信,多线程和线程中的异常处理,线程组类ThreadGroup的构建及使用。
-
第八章输入与输出类
本章主要讲解如何使用字节流和字符流来读写磁盘上的文件,典型IO流的用法,如何使用File对象访问本地文件系统。
-
●8.1字节流
本节主要介绍字节流的概念、字节流读写文件、字节流的缓冲区。
-
●8.2字符流
本节主要介绍字符流定义及基本用法,字符流操作文件以及转换流。
-
●8.3File类
本节主要介绍File类的常用方法,遍历目录下的文件,删除文件及目录。
-
●8.4字符编码
本节主要介绍常用的字符集、字符编码和解码。
-
●8.5其他常用IO流
本节主要介绍ObjectInputStream、ObjectOutputStream、DataInputStream、DataOutputStream、printStream以及标准输入输出流。
-
第九章图形用户界面
本章节中介绍的Swing是一个用于开发Java应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。
通过本章节的学习,在以后的使用中能够较为熟练的设计相应的用户图形界面,并能够对相应的事件进行监听和处理。 -
●9.1AWT事件处理
本知识点主要对AWT中的常用事件进行讲解。通过本知识点的学习了解Java事件监听机制中事件和事件源的概念,了解监听器类的用途。
-
●9.2常用事件分类
本知识点主要对Java CUI接口总常用事件处理各组件所对应的事件监听器进行了相关的讲解。通过本知识点的学习,能够在以后的练习中添加使用相关的时间监听器和方法。
-
●9.3布局管理器
本知识点主要对GUI中的5个布局管理器进行了讲解和介绍。讲解了各个布局管理器的特点及构建方法。通过本知识点的学习,能够较为熟练的使用前三种常用的布局管理器,并会设定其属性。
-
●9.4Swing
本知识点主要讲解了Java GUI API中所分为的三个部分:组件类(component class) 容器类(container class),和辅助类(helper class)及其它们中所包含的相应的控件容器等。通过本知识点的学习,能够较为熟练的使用GUI中的主要控件或组件。
-
第十章网络编程
本章主要讲授ava.net 包中 J2SE 的 API 包含有类和接口,它们提供低层次的通信细节。你可以直接使用这些类和接口,来专注于解决问题,而不用关注通信细节。
java.net 包中提供了两种常见的网络协议的支持:
TCP:TCP 是传输控制协议的缩写,它保障了两个应用程序之间的可靠通信。通常用于互联网协议,被称 TCP / IP。
UDP:UDP 是用户数据报协议的缩写,一个无连接的协议。提供了应用程序之间要发送的数据的数据包 -
●10.1网络通信协议
网络各个协议:TCP/IP、SOCKET、HTTP。 HTTP协议,对应于应用层;TCP协议,对应于传输层; IP协议,对应于网络层 的基本知识
-
●10.2UDP通信
UDP ,用户数据报协议(User Datagram Protocol),UDP协议(用户数据报协议)是无连接的、不可靠的、无序的,速度快 .
DataGramPacket类表示发送数据报包。
数据报包用来实现无连接包投递服务。每条报文仅根据该包中包含的信息从一台机器路由到另一台机器 -
●10.3TCP通信
传输控制协议(Transmission Control Protocol)
1.TCP协议是面向连接的、可靠的、有序的、以字节流的方式发送数据,通过三次握手方式建立连接,形成传输数据的通道,在连接中进行大量数据的传输,效率会稍低.
2.Java中基于TCP协议实现网络通信的类
客户端的Socket类和 服务器端的ServerSocket类
-
第十一章JDBC编程
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。
2.数据库驱动
我们安装好数据库之后,我们的应用程序也是不能直接使用数据库的,必须要通过相应的数据库驱动程序,通过驱动程序去和数据库打交道。其实也就是数据库厂商的JDBC接口实现,即对Connection等接口的实现类的jar文件。
3.使用JDBC的步骤
加载JDBC驱动程序 → 建立数据库连接Connection → 创建执行SQL的语句Statement → 处理执行结果ResultSet → 释放资源
(1).注册驱动 (只做一次)
方式一:Class.forName(“com.MySQL.jdbc.Driver”);
推荐这种方式,不会对具体的驱动类产生依赖。
方式二:DriverManager.registerDriver(com.mysql.jdbc.Driver);
会造成DriverManager中产生两个一样的驱动,并会对具体的驱动类产生依赖。
(2).建立连接
(3).创建执行SQL语句的statement
(4).处理执行结果(ResultSet)
(5).释放结果 -
●11.1JDBC基础
JDBC(Java DataBase Connectivity,Java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成,所以JDBC本质就是一些操作数据库的jar包。
JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,JDBC是Java程序操作数据库必要的接口,并且是持久层框架如Mybatis的基础,只有理解和熟练使用JDBC才能对框架的理解更加深入,知其然更知其所以然。总而言之,要使用Java操作数据库就要使用JDBC。 -
●11.2JDBC语句对象与性能优化
本节主要是讲授Jdbc程序的性能主要由两个因素决定,一是数据库本身的性质,另一个是与数据库相对独立的jdbc应用程序接口(api)的使用。这里说的是如何正确使用jdbc编程接口,以获得更好的性能。
jdbc主要优化有:
1.选择正确的jdbc驱动程序
2.Connention的优化:使用连接池来管理Connection对象
3.Statement的优化:使用批量更新等
4.Result的优化:正确的从数据库中get数据等 -
●11.3JDBC高级-单一实例查询
本节主要讲授jdbc的preparedstatement,是从java.sql.connection对象和所提供的sql字符串得到的,sql字符串中包含问号(?),这些问号标明变量的位置,然后提供变量的值,最后执行语句.
preparedstatement也提供数据库无关性。当显示声明的sql越少,那么潜在的sql语句的数据库依赖性就越小。由于preparedstatement具备很多优点,开发者可能通常都使用它,只有在完全是因为性能原因或者是在一行sql语句中没有变量的时候才使用通常的statement