Java程序设计开发实战,李兴华原创编程图书
  DzeAR5woCouH 2023年11月15日 33 0

Java是当前主流的编程语言,有着非常丰富且完善的语法结构,为了帮助读者完整且清晰的掌握Java核心语法以及完整的面向对象设计与分析思想,特编写此书。


本书一共包含有13个章节内容,从基础的Java开发环境搭建以及语法知识进行全面的知识分析,帮助读者深刻的理解程序逻辑、方法、类、对象、抽象类、接口、包、访问权限、模块以及多线程的相关概念,并通过大量的练习案例进行了实现讲解。


本书附有配套视频、源代码、习题、教学课件等资源。为了帮助读者更好地学习本书,作者还提供了在线答疑。

本书适合作为高等教育本、专科院校计算机相关专业的教材,也可供广大计算机编程爱好者自学使用。

Java程序设计开发实战,李兴华原创编程图书_数组

从最早接触计算机编程一直到现在已经过去二十四年的时间了,其中有十七年的时间中,我一直都在一线讲解编程开发,然而我一直都在思考一个问题,如何可以让学生在有限的时间里学习到更多且更全面的知识?但是最初的我并不知道答案,于是只能够大量挤占每天的非教学时间,甚至连节假日都给学生持续补课。因为当时的我想法很简单,用时间去弥补技术发展的速度,争取交给学生更多的技术,让学生在找工作时游刃有余,但是这对于我和学生来讲都实在过于痛苦了,毕竟我们都只是普通的人,当课程讲解到精疲力尽,当学生学习到头晕脑涨,那个时候我知道自己应该改变了。


时代的技术发展已经发生了不可逆转的变革,在软件行业中,最先发生改变的一定是就业环境。很多优秀的软件公司或互联网企业已经由简单的需求招聘,变为了能力招聘,要求从业者不再是简单培训班量产的学生,此时的从业者如果想顺利的进入到软件行业,获取自己心中的高薪职位,那么就有良好的技术学习方法。换言之不再是被动的教学模式,而是主动的努力钻研技术,这样才可以具有更扎实的技术功底,才能够应对各种可能出现的技术挑战。


于是怎样可以让学生们学习到最有用的知识,可以节约宝贵的时间就成为了我思考的核心问题。因为在我来讲教育两个字是神圣的,那么既然是神圣的就要将教育与商业的运作有所区分。教育提倡的是付出与奉献,而商业运作将就的是盈利,但是盈利和教育本身就是有不可调和的矛盾。所以我拿出几年的时间,安心的将我近20年的教学经验融合在这套编程系列的图书之中,以读者学习的角度进行写作,将多年所累计的学生学习问题如实的反映在这套图书之中,如图0-1所示,我想有了这样一套方向明确的学习图书,那么我们的学习将不再迷茫。


 

Java程序设计开发实战,李兴华原创编程图书_数组_02

图0-1 Java学习全栈系列图书


从我当年自学的经历来讲,获取一本讲解透彻的图书真的很难,甚至可以说是没有,一个概念往往要查阅大量的书籍。更可笑的是,有些书籍查看了之后发现内容竟然是重叠的,就连网上查找的资料也都有大量的重复,于是我清楚的知道“原创”二字对我写书的重要意义为何,但是原创写书的路途上满是荆棘之路,这也是为什么我一本图书要编写好久的原因,当一本图书写完之后的回首时刻,我才觉得可以松一口气,但是仅仅是一口气,因为还有更多的图书要继续编写。


但是仅仅依靠原创真的可以让学生学会吗?对不起,很难。因为计算机编程图书之中有大量的晦涩难懂的专业性词汇,如果所有的初学者都清楚的掌握了这些词汇的概念,那么你就已经学会了编程,也就不需要再买书学习了。为了帮助所有的技术爱好者们扫平学习障碍,我在图书中绘制了大量的图形进行概念的解释,此外还提供了与教学章节内容相符的视频资料,所有的视频讲解时代码全部为现场编写。我就是希望用这一次又一次的重复劳动,帮助大家理解代码,让大家可以学会,可以说我们的图书中所提供的配套资料已经抵得上你花几万块学费参加的培训班的课程。如果不信?你可以尝试计算一下我们的实际讲课时间,以及培训班的实际讲课时间,计算完成后你一定会清楚的发现我们为这套图书所做出的努力以及付出的心血,而我们也希望通过这样的努力给大家一套可以学懂、学会的图书,帮助大家解决高薪就业难题。


本书为整套Java编程系列图书的第一本,也是一本入门的图书内容,书中详细的讲解了Java中的核心基础知识,而这些知识又是实际开发中不可或缺的组成部分,全书一共分为13章,每一章的具体内容安排如下:

第01章、走进Java的世界:为读者详细讲解了Java语言的发展历史和主要的分类。通过具体的操作讲解了如何在Windows与Mac系统下实现JDK的安装与配置,并且编写了第一个Java应用程序以及对程序的相关解释,通过这一章的讲解可以让读者快速的对Java程序结构有一个基本的认知,便于后续的语法学习;

第02章、程序基础概念:程序的设计主要是围绕着数据的操作,而为了实现数据的操作就要提供有数据类型,在本章中详细的讲解了Java基础数据类型的使用以及限制,同时讲解了String字符串操作类的基础应用与转义字符串的使用,由于数据本身是需要运算支持的,在本章中也通过案例详细的讲解了各个运算符的使用。

第03章、程序逻辑结构:程序是根据人为的设计要求实现的数据处理,而在处理中就需要考虑各种的逻辑情况,这样就需要在项目中使用分支与循环逻辑,本章中为读者详细的讲解了各个逻辑结构的使用,同时又讲解了如何在Java中实现方法的相关定义及使用。

第04章、类与对象:面向对象是Java编程的核心,如果要想充分的理解Java语言就必须从类与对象的结构开始进行逐层深入学习,本章详细的讲解了类与对象定义的相关概念、内存引用分配等核心知识,此外还包括this、static关键字,并通过简单Java类实现了全部概念应用的总结;

第05章、数组:为便于实现多内容的存储,编程语言一般都会提供数组的概念,Java中的数组属于引用类型,所以在数组研究时除了讲解数组的基本概念之外,最重要的就是引用传递的处理以及具体的应用,在这一章中将结合类、对象与数组的形式实现了综合性的应用设计。

第06章、String字符串:字符串是Java中最具有特色的类,也是在Java学习过程中需要使用者深入学习的一个系统类,在本章中会详细的讲解字符串的相关使用定义、常量池的作用以及JavaDoc文档方法的查找;

第07章、继承与多态:面向对象的核心设计思想在于结构上的重用,这样就需要通过类继承结构来实现,本章完整的讲解了类继承的实现操作,并基于继承的结构分析了多态性的使用特点;

第08章、抽象类与接口:Java语言设计的核心结构在于抽象类与接口,这也是实际项目开发过程中的重点所在,本章为读者详细的讲解了Java接口的主要作用与新特性扩展,同时通过一系列的案例分析了抽象类与接口之间的设计关联。

第09章、类结构扩展:一个完整的项目之中除了有核心的类结构实现之外,还会包含有代码结构的管理,这样就需要提供包、权限以及模块的支持,本章在已有类结构的基础上继续进行扩充,分析了包的使用、访问权限与单例及多例设计模式的使用,同时讲解了JDK9之后自定义模块的使用。

第10章、异常捕获与处理:为了编写稳定可靠的程序,Java提供了完善的异常处理机制,在本章中为读者分析了异常处理不及时的后果,以及与异常有关的核心概念及实际应用设计方案;

第11章、内部类:为了类的局部应用问题,Java提供了嵌套式的解决方案,而内部类就是最为重要的嵌套管理结构,本章为读者分析了内部类的作用以及相关的定义结构,并基于接口、抽象类等结构进行了深入的分析讲解,考虑到实际面试以及后续源码分析的要求,又重点讲解了自定义链表结构的使用;

第12章、IDEA开发工具:为了进行高效的Java程序开发,一定需要一款IDE工具,在现代开发中IDEA是绝对处于霸主地位的开发工具,本章为读者讲解了IDEA工具的获取以及使用。

第13章、多线程:Java中为了提高应用的处理性能,提供了多线程的开发支持,本章详细的解释了多线程的相关知识,同时又深入分析了多线程中同步与死锁问题,学习好本章后会便于读者进一步理解Java应用设计的部分,同时也为后续的J.U.C、JVM讲解打下坚实的基础。


通过具体的章节内容的介绍相信读者已经可以清楚本书的定位,就是为初学者量身打造的一本保姆式的编程图书,我们会将所有Java的核心概念进行全面的讲解,而其中相关概念所涉及到的结构如图0-2所示。因为在多年的教学中我深刻的理解基础知识对每一位技术人员的重要程度,所以温馨的提醒每一位学习者:从基础开始打磨,慢慢成长。

 

Java程序设计开发实战,李兴华原创编程图书_运算符_03

图0-2 图书技术点

最后的最后我想说的是,因为写书与各类的公益技术直播,我错过了许多与我孩子和家人欢聚的时光,我内心感到非常的愧疚,但是我希望不久的未来我能为我的孩子编写一套属于他自己的编程类图书,帮助所有有需要的孩子进步,因为我喜欢研究编程技术,也勇于自我突破,如果你也是这样的一位软件工程师,也希望加入到我们这个公益技术直播的行列之内,让我们抛开所有的商业模式的束缚,一起将自己学到的技术传播给更多的爱好者,以我们微薄之力推动整个行业的技术发展,就如同我说过的,教育的本质是分享,并不是赚钱的工具。

图书目录:

 

第1章 走进Java的世界 1

1.1、Java发展历史 1

1.2、Java语言特点 2

1.3、Java虚拟机 3

1.4、搭建Java开发环境 5

1.4.1、JDK简介 5

1.4.2、JDK的安装与配置 7

1.5、Java编程起步 9

1.6、CLASSPATH环境属性 12

1.7、JShell交互式编程工具 14

1.8、MacOS系统开发Java程序 15

1.8.1、MacOS系统安装JDK 15

1.8.2、手工管理MacOS系统JDK 17

1.8.3、Jenv工具管理MacOS系统JDK 18

1.9、本章概览 19


2、程序基础概念 1

2.1、程序注释 1

2.2、标识符与关键字 2

2.3、Java数据类型 4

2.3.1、变量与常量 5

2.3.2、整型 8

2.3.3、浮点型 11

2.3.4、字符型 12

2.3.5、布尔型 14

2.3.6、String字符串 15

2.3.7、var关键字 17

2.4、运算符 18

2.4.1、数学运算符 20

2.4.2、自增与自减运算符 21

2.4.3、关系运算符 23

2.4.4、三目运算符 24

2.4.5、逻辑运算符 25

2.4.6、位运算符 27

2.5、本章概览 30


第3章 程序逻辑结构 1

3.1、程序逻辑 1

3.2、分支结构 2

3.2.1、if分支结构 2

3.2.2、switch分支结构 4

3.2.3、yield局部返回 7

3.3、循环结构 8

3.3.1、while循环结构 8

3.3.2、for循环结构 10

3.3.3、循环控制语句 12

3.3.4、循环嵌套 13

3.4、方法 15

3.4.1、方法基本定义 16

3.4.2、方法重载 18

3.4.3、方法递归调用 20

3.5、本章概览 23

3.6、实战自测 23


第4章 类与对象 1

4.1、面向对象概述 1

4.2、类与对象 2

4.2.1、类与对象定义 3

4.2.2、对象内存分析 5

4.2.3、对象引用传递分析 7

4.2.4、垃圾产生分析 10

4.3、成员属性封装 12

4.4、构造方法 13

4.5、匿名对象 16

4.6、this关键字 17

4.6.1、this调用本类成员属性 17

4.6.2、this调用本类方法 18

4.6.3、构造方法互调用 19

4.6.4、当前对象this 22

4.7、简单Java类 25

4.8、static关键字 27

4.8.1、static属性 27

4.8.2、static应用案例 30

4.8.3、static方法 32

4.9、代码块 34

4.9.1、普通代码块 34

4.9.2、构造代码块 36

4.9.3、静态代码块 36

4.10、本章概览 39

4.11、实战自测 39


第5章 数组 1

5.1、数组定义与使用 1

5.1.1、数组定义 1

5.1.2、数组静态初始化 3

5.1.3、数组与for循环 5

5.1.4、foreach输出 6

5.2、数组引用传递 7

5.2.1、数组引用分析 7

5.2.2、数组与方法 9

5.2.3、数组统计案例 11

5.2.4、数组排序案例 13

5.2.5、数组转置案例 15

5.3、二维数组 17

5.4、JDK内置数组操作方法 18

5.5、方法可变参数 19

5.6、对象数组 21

5.7、引用传递应用案例 22

5.7.1、引用关联 22

5.7.2、自身关联 24

5.7.3、合成设计模式 26

5.8、数据表与类映射 27

5.9、本章概览 30

5.10、实战自测 31


第6章 String字符串 1

6.1、字符串基本定义 1

6.2、字符串比较 2

6.3、字符串常量 4

6.4、String对象实例化方式比较 5

6.5、字符串常量池 8

6.6、字符串修改分析 9

6.7、主方法组成分析 10

6.8、字符串常用方法 11

6.8.1、字符串与字符 11

6.8.2、字符串与字节 13

6.8.3、字符串比较 14

6.8.4、字符串查找 15

6.8.5、字符串替换 17

6.8.6、字符串拆分 18

6.8.7、字符串截取 19

6.8.8、字符串格式化 20

6.8.9、其他操作方法 21

6.10、本章概览 24


第7章 继承与多态 1

7.1、面向对象继承性 1

7.1.1、类继承定义 2

7.1.2、子类对象实例化流程 4

7.1.3、继承限制 6

7.2、覆写 8

7.2.1、方法覆写 9

7.2.2、方法覆写限制 11

7.2.3、属性覆盖 13

7.3、final关键字 14

7.4、Annotation注解 15

7.4.1、准确覆写 15

7.4.2、过期声明 16

7.4.3、压制警告 17

7.5、对象多态性 18

7.5.1、对象向上转型 19

7.5.2、对象向下转型 21

7.5.3、instanceof关键字 23

7.6、Object类 24

7.6.1、获取对象信息 25

7.6.2、对象比较 26

7.7、本章概览 27

7.8、实战自测 28


第8章 抽象类与接口 1

8.1、抽象类 1

8.1.1、抽象类基本定义 2

8.1.2、抽象类相关说明 3

8.1.3、模版设计模式 5

8.2、包装类 8

8.2.1、装箱与拆箱 9

8.2.2、数据类型转换 11

8.3、接口 14

8.3.1、接口相关说明 16

8.3.2、适配器设计模式 19

8.3.3、工厂设计模式 21

8.3.4、代理设计模式 23

8.3.5、接口开发标准 25

8.3.6、接口定义加强 27

8.3.7、抽象类与接口区别 28

8.4、泛型 29

8.4.1、泛型基本定义 30

8.4.2、泛型通配符 31

8.4.3、泛型接口 34

8.4.4、泛型方法 36

8.5、本章概览 36

8.6、实战自测 37


第9章 类结构扩展 1

9.1、包的定义与使用 1

9.1.1、包的定义 2

9.1.2、包的导入 3

9.1.3、静态导入 5

9.1.4、jar文件 6

9.1.5、系统常用包 7

9.2、访问控制权限 8

9.3、构造方法私有化 9

9.3.1、单例设计模式 9

9.3.2、多例设计模式 10

9.4、枚举 11

9.4.1、Enum类 13

9.4.2、扩展枚举结构 14

9.4.3、枚举应用案例 15

9.5、模块化设计 16

9.5.1、模块定义 17

9.5.2、模块引用 19

9.5.3、模块发布 20

9.6、本章概览 21


第10章 异常捕获与处理 1

10.1、异常捕获 1

10.1.1、异常处理 2

10.1.2、处理多个异常 3

10.2、异常控制 4

10.2.1、throws关键字 6

10.2.2、throw关键字 7

10.2.3、异常处理模型 8

10.4、RuntimeException 10

10.5、自定义异常类 11

10.6、assert关键字 12

10.7、本章概览 12


第10章 内部类 1

10.1、内部类 1

10.1.1、内部类相关说明 3

10.1.2、static定义内部类 6

10.1.3、方法中定义内部类 8

10.2、函数式编程 9

10.2.1、Lambda表达式 9

10.2.2、方法引用 11

10.2.3、内建函数式接口 13

10.3、链表数据结构 15

10.3.1、链表基本结构 16

10.3.2、增加链表数据 17

10.3.3、统计链表元素个数 18

10.3.4、空链表判断 20

10.3.5、获取链表数据 20

10.3.6、根据索引查询数据 22

10.3.7、修改链表数据 23

10.3.8、链表数据查询 24

10.3.9、链表数据删除 26

10.3.10、清空链表数据 27

10.4、本章概览 28

10.5、实战自测 29


第12章 IDEA开发工具 1

12.1、IDEA简介 1

12.2、IDEA安装与配置 2

12.3、开发Java程序 6

12.4、jar包管理 9

12.5、debug代码调试 11

12.6、JUnit单元测试 12

12.7、SVN版本控制工具 15

12.7.1、配置SVN服务端 16

12.7.2、IDEA与SVN整合 17

12.7.3、代码冲突管理 19

12.8、本章概览 22


配套视频列表:

010101_【理解】认识Java

Java语言诞生于九十年代,经过了长期的发展,现在已经成为最为流行的编程语言,不仅在服务端编程上广泛使用,各个移动设备也大量使用Java平台,本课程主要介绍Java的产生动机以及后续发展延续;


010102_【理解】Java语言特点

Java是一门优秀的编程语言,之所以广泛的活跃在互联网与移动设备上,主要是因为其开发简洁并且有完善的生态系统,本课程将为读者讲解Java语言的各主要特点。


010103_【掌握】Java虚拟机

Java语言最初所宣传的口号就是“可移植性”,这样使得开发者不必为不同的操作系统的程序运行带来困扰,本课程主要讲解Java虚拟机的实现原理以及可移植性分析。


010201_【理解】JDK简介

JDK是Java专属的开发工具,也是最底层的开发支持。本程序将为读者讲解JDK的主要功能以及发展介绍,同时演示了如何通过Oracle官方网站获取JDK。


010202_【掌握】JDK安装与配置

JDK是Java程序开发的重要工具,本课程主要讲解如何在Windows系统上进行JDK的安装,同时进行了环境属性的配置以及JDK命令的使用测试。


010203_【掌握】Java编程起步

JDK是程序开发的核心支持,而程序员主要是编写程序代码,本课程中将为读者演示如何编写并执行第一个Java程序,以及程序的组成说明;


010301_【掌握】CLASSPATH环境属性

CLASSPATH是Java中的重要环境属性,同时也是在实际项目开发之中必须要使用的概念,本课程主要讲解了CLASSPATH属性的作用以及设置方法。


010401_【了解】JShell交互式工具

Java为了迎合当今市场的技术开发需求,从Java 9版本之后提供有交互式的JShell编程环境,本课程主要讲解JShell工具的作用以及使用;


010501_【理解】MacOS系统安装JDK

Macbook在软件开发行业是最常用的开发笔记本,Macbook中自带的MacOS系统也属于类UNIX系统,本课程为读者讲解了如何通过Oracle官方站点获取MacBook的JDK支持,同时通过命令行的方式进行了JDK的安装与程序执行


010502_【理解】手工管理MacOS系统JDK

随着时间的推移以及JDK不断更新,开发者电脑上一定会存在有大量的JDK版本,开发中为了便于对这些JDK进行管理,可以基于环境配置的模式动态切换,本课程讲解了如何在MacOS系统下进行多JDK的配置以及JDK动态切换处理


010503_【理解】Jenv工具管理MacOS系统JDK

Jenv是在MacOS系统中提供的一个JDK管理工具,其需要开发者进行单独的安装,本课程讲解了如何通过brew实现Jenv工具的安装,同时讲解了Jenv的配置以及JDK切换操作


010504_【理解】VSCode开发Java程序

VSCode是微软公布的一款最新的开源IDE工具,其支持有大量的配置插件且拥有大量的使用者,本课程为读者介绍了VSCode特点,同时讲解了如何利用VSCode实现Java程序的开发与运行。



020101_【掌握】程序注释

在程序编写的过程之中,使用注释可以明确的标记出代码的作用,同时也更加方便维护,在本课程主要为读者讲解了注释意义,以及Java中支持的三种注释使用形式。


020201_【掌握】标识符与关键字

程序开发中需要为特定的代码进行唯一名称的指定,而这样的名称就被称为标识符,在本课程主要讲解了标识符的定义要求以及Java中关键字的概览。


020301_【掌握】Java数据类型划分

 程序是一个完整的数据处理逻辑,在实际项目中需要通过不同的数据类型来进行相关内容的描述,在本课程主要为读者讲解了Java中各个数据类型的划分以及使用特点。


020302_【掌握】变量与常量

在程序中为了便于数据的操作提供有变量和常量两种数据存储结构,本课程为读者详细的解释了变量与常量的区别,同时通过具体的操作代码为读者分析了变量默认数据类型的使用


020303_【掌握】整型

 整型描述的是整数数据,也是最为常用的数据类型,在本课程主要讲解了整型数据的使用,包括数据的溢出与解决方法,以及数据类型的转换操作。


020304_【掌握】浮点型

 浮点型是程序对小数的描述,本课程主要讲解了Java中float与double数据类型的使用,同时阐述了整型除法操作的缺陷与解决方案。


020305_【掌握】字符型

 本课程主要讲解了char数据类型的使用,讲解了UNICODE编码与ASCII码的联系与区别,并且通过具体的char与int间的转换操作,并分析了大小写转换的实现。


020306_【掌握】布尔型

 布尔在程序开发中描述的是一种逻辑数值(或者保存逻辑运算结果),本课程主要介绍boolean型数据的特点以及取值要求;


020307_【掌握】String字符串

 String是Java开发中最为特殊也是极为重要的程序类,本课程主要讲解String型数据的基本特点,并且分析了在String中使用“+”实现的字符串数据连接操作;


020308_【了解】var关键字

 var是Java在新版本中推出的一个新的关键字,主要通过设置的内容来进行变量类型的推断定义,本课程为读者讲解了var关键字的使用形式,同时分析了Java中针对于var关键字设计的缺陷。


020401_【掌握】运算符概述

 运算符是程序处理数据的核心逻辑结构,在Java中也提供有多种运算符,本课程主要针对于Java中提供的运算符进行说明,并且强调了运算符的使用要点。


020402_【掌握】数学运算符

 程序设计的主体是数据操作,数学计算是数据操作的基本功能,在本课程中将为读者讲解基础的四则运算,并且用实例的方式分析了模运算的意义以及简化运算符的使用


020403_【掌握】自增与自减运算符

 在计算机的发展历史过程之中,软件开发一直受到硬件性能的影响,在基础运算中为了进一步减少内存的占用,会通过自增实现加1的操作,或者通过自减的形式实现减1的操作,本课程为读者分析了自增与自减两个运算符的使用以及注意事项。


020404_【掌握】关系运算符

 关系运算符可以进行指定数据类型关系比较,比较结果将通过布尔值进行保存,本课程主要讲解如何通过关系运算符实现数据的比较操作。


020405_【掌握】三目运算符

 三目运算符是一种简化的赋值运算符,利用该运算符可以依据判断条件的结果动态决定赋值的内容,本课程主要讲解三目运算符的语法与使用。


020406_【掌握】逻辑运算符

 当程序中需要通过若干个关系运算表达式进行整体计算时,可以采用逻辑运算符进行连接,在本课程中主要讲解逻辑运算符的使用,掌握分析了&和&&、|和||的区别。


020407_【了解】位运算符 位运算是计算机的基础运算单元,Java为了提高程序的运算性能,可以直接通过位运算符进行计算操作,本课程主要讲解二进制的数据转换,以及各个位运算符操作。




030101_【掌握】程序逻辑结构

 程序逻辑是程序进行数据处理的基本流程,合理的使用程序逻辑才可以实现正确的业务操作,本课程主要为读者讲解了三种程序结构以及相关的作用阐述。


030201_【掌握】if分支结构

 分支结构可以依据布尔表达式的运算结果实现不同程序语句块的执行,本课程主要讲解了Java中三种分支语句的使用形式(if、if…else、if…else if…else)。


030202_【掌握】switch分支结构

switch是分支语句的另外一种实现形式,与if分支语句不同的地方在于,switch不支持逻辑运算符判断,本课程主要讲解Java中switch语句语法,并分析break语句作用;


030203_【理解】yield关键字

yield是在JDK13中提供的新关键字,主要与switch结合实现局部操作返回,本课程为读者分析了yield关键字的使用形式,以及switch中yield的完整使用语法和简化语法的使用。


030301_【掌握】while循环结构

循环结构可以实现某一段代码块的重复执行,本课程主要讲解while、do…while循环语句的使用,并分析了两种循环的使用区别。


030302_【掌握】for循环结构

 while循环是依据判断条件的结果实现的循环控制,在明确知道循环次数的情况下,可以使用for实现循环控制,本课程主要讲解for循环语句的使用。


030303_【掌握】循环控制语句

 循环结构可以保证代码的重复执行,为了保证程序可以对循环操作进行中断控制,提供了break与continue关键字,本课程将为读者讲解这两个关键字的使用。


030304_【理解】循环嵌套

 循环结构可以通过语法嵌套的形式实现更加复杂的逻辑控制操作,在本课程中主要讲解如何利用循环嵌套打印乘法口诀表与三角形。


030401_【理解】方法作用概述

 方法是程序开发之中最为常见的一种代码结构,在Java项目开发中会被大量的使用,为了便于读者理解方法的本质作用,本此课程将通过实例分析的方式为读者从生活的角度分析方法的主要作用。


030402_【掌握】方法基本定义

 方法是进行代码可重用性一种技术手段,在本课程中主要讲解Java方法的基本作用与语法定义格式,并且利用实例演示了方法的定义及使用。


030403_【掌握】方法重载

 方法重载是采用技术形式实现方法名称可重用设计的一种技术手段,在本课程主要讲解方法重载的实现要求与使用限制。


030404_【了解】方法递归调用

 递归调用(Recursion Algorithm)是一种特殊的方法嵌套调用形式,可以利用递归调用实现更为复杂的计算,在本课程中主要讲解方法递归调用的操作形式。


030501_【掌握】数字交换

 数字交换是一种最为原始的变量处理操作,在进行数字交换处理逻辑中原始的做法是需要通过第三方变量的形式进行处理,在本课程讲解中为读者分析了原始做法同时实现了在不引入第三方变量时的数据交换操作逻辑


030502_【掌握】打印水仙花数 水仙花数是一种三位数字特殊结构,本课程利用循环的结构并且基于分支结构实现了1000以内的水仙花数的数据输出。


030503_【掌握】打印素数 素数又称为质数,是一种只能够被1和其自身整除的数据,本课程通过循环结构的处理实现了指定范围内素数的输出。


030504_【掌握】最大公约数与最小公倍数 最大公约数是共有的因数,而最小公倍数是共有的因数及其他因数之积,这属于一个基本的数学运算逻辑,本课程通过随意的两个数字实现了这两个数值的计算。


030505_【掌握】计算皮球反弹高度 本课程通过一种线性的模拟结构实现了一个皮球自由落体总运行数据的统计处理,在课程中分析了int和double两种数据类型对程序的影响。


030506_【掌握】猴子吃桃 猴子吃桃是一道经典基础程序逻辑,利用线性结构和循环的处理特点采用逆序推理的方式实现数据统计处理操作。




040101_【理解】面向对象简介 程序开发经历了面线过程与面向对象的设计阶段,本课程主要讲解了两种开发形式的宏观区别,并解释了面向对象三个主要特征。


040201_【理解】类与对象概述 类与对象是面向对象的核心组成元素,本课程主要是利用概念区分类与对象的区别,并且分析了类中的基本组成结构。


040202_【掌握】类与对象基本定义 本课程主要讲解了如何在程序中进行类的定义,同时讲解了对象的实例化格式以及对象的使用方法。


040203_【掌握】对象内存分析 类属于引用数据类型,引用传递也构成了Java的核心操作单元,本课程主要为读者分析对象实例化之后的内存空间开辟以及属性操作对内存的影响,并且通过实例分析了NullPointerException(空指向异常)的产生。


040204_【掌握】引用传递 引用传递是Java中的核心概念,类似于C / C++的指针操作,本课程将为读者讲解对象引用传递的处理操作,同时基于此概念进行了方法对象参数的形式分析。


040205_【掌握】垃圾产生分析 为了方便内存管理,Java提供有垃圾收集机制(GC),本课程主要在之前程序的基础上进一步分析引用传递的操作过程,并且分析了垃圾内存空间的产生原因。


040301_【掌握】成员属性封装 封装性是面向对象的第一大特征,本课程是讲解程序封装性的初步分析,主要讲解private关键字的使用,同时给出了封装操作的开发原则。


040401_【掌握】构造方法 构造方法是进行类属性初始化的重要技术手段,本课程首先通过直观的概念为读者解释了构造方法存在与否的区别,随后分析了构造方法的定义要求以及构造方法的重载


040501_【掌握】匿名对象 匿名对象是一种特殊的使用形式,本课程为读者分析了匿名对象和有名对象的区别与联系,同时通过具体的实例讲解了匿名对象的实际作用。


040601_【掌握】调用本类成员属性 类中成员属性和方法参数由于表示含义的需要,有可能会产生重名定义的问题,为了解决名称标注的问题,可以通过this关键字描述,本课程主要讲解“this.属性”语法。


040602_【掌握】调用本类普通方法 程序类中的方法都是基于对象的形式进行的调用,在进行本类方法调用时可以利用“this.方法()”的形式或直接使用“方法()”的格式进行调用,本课程为读者分析了在类的构造方法和普通方法中调用本类方法的操作



040603_【掌握】构造方法互调用 构造方法可以实现对象属性初始化功能,所以在复杂类的结构中就需要考虑构造方法的重用性,本课程为读者分析了构造方法互调用存在的意义,并且通过具体的程序案例讲解了构造方法调用操作的实现与注意事项


040604_【理解】当前对象 一个类中可以产生若干个实例化对象,并且都可以进行本类结构的调用,本课程主要讲解当前对象的概念,并且通过实例分析当前对象的使用。


040701_【掌握】简单Java类 本代码模型主要是结合之前所学习过的面向对象概念进行的总结性开发,也是最为重要的开发技术。本课程主要讲解的是简单Java类的编写模型第一层实现,读者应该通过此代码建立基本的面向对象思维模式。


040801_【掌握】地址信息类 类与对象是面向对象的基本元素,为了帮助读者清楚简单Java类的设计与使用,本课程将通过一个地址类进行类的实际使用分析


040802_【掌握】雇员信息类 类与对象是面向对象的基本元素,为了帮助读者清楚简单Java类的设计与使用,本课程将通过一个员工类进行类的实际使用分析


040803_【掌握】用户登录 本程序在简单Java类的基础上追加了一些业务逻辑的功能,目的是帮助用户对概念可以有所区分,通过一个登录逻辑的控制讲解工具类的定义。


040901_【掌握】static属性 类中的成员有普通成员(非static)和静态成员(static),本课程主要讲解static属性与非static属性在使用形式上的区别,并且利用内存关系分析了两者存储区别。


040902_【掌握】static应用案例 类中除了普通方法之外还可以进行static方法的定义,本课程主要讲解static定义方法的特点以及与非static属性及方法间的操作限制。


040903_【掌握】static方法 static结构可以不受到对象实例化的限制并且可以实现多个实例化对象的共享操作,在本课程中将利用static属性的技术特点实现对象个数统计与自动属性命名功能的实现。


041001_【掌握】static开发实战 本课程为static关键字的使用案例分析,通过具体的课程案例为读者讲解了static属性的操作特点,同时深入理解属性自动命名的操作机制。


041101_【理解】普通代码块 代码块是程序结构的子组成部分,在代码块中加上相应的关键字可以描述不同的功能,本课程主要讲解普通代码块的使用特点以及可能出现的操作形式分析。


041102_【理解】构造块 类对象实例化依靠构造方法实现,除了构造方法之外也可以将代码块定义在类中,本课程主要讲解构造块与构造方法的使用关系


041103_【理解】静态代码块 静态代码块在类中具有优先执行权限,是对构造块的进一步定义,本课程主要讲解static定义代码块的定义形式与特点,同时分析了主类与分主类中的static代码块的执行。




050101_【掌握】数组定义 数组是基础的线性存储结构,可以有效的实现一组变量的关联管理,本课程主要讲解数组的基本概念、定义语法与使用形式, 同时分析了数组的长度限制问题以及数组越界错误


050102_【掌握】数组静态初始化 数组是一组相关的变量集合,这样为了方便数组内所有变量的内容初始化,所以提供了静态数组定义格式,本课程为读者分析了数组静态定义的语法以及数组元素的操作。


050103_【掌握】数组与for循环 数组是一种线性的存储结构,只要进行合适的索引下标操作就可以实现数组元素的控制,本课程为读者分析了如何结合for循环语句实现数组的操作,以及length属性的作用。


050104_【掌握】foreach输出 数组的输出形式除了依据循环与索引的访问形式之外,还提供有foreach结构,本课程主要讲解如何使用foreach实现数组数据的输出,同时分析了foreach输出数组的操作流程


050201_【掌握】数组引用分析 数组属于引用数据类型,所以数组本身也会存在有堆栈内存的使用关系,本课程主要讲解数组的内存分配结构同时采用引用操作的形式分析了不同栈内存对同一堆内存中的数组内容操作


050202_【掌握】数组与方法 在程序开发中引用传递和方法的参数接收彼此有很强的结核性,本课程主要讲解数组的引用传递,借助于方法实现进一步的引用分析,讲解了如何利用方法接收数组或返回数组的操作


050203_【掌握】数组信息统计案例 方法在进行数据处理时只能够返回有单个数据信息,本次的案例将为读者分析如何在一个方法中利用数组结构返回有多个数据项,同时在课程讲解中还通过面向过程和面向对象的两种不同实现模式阐述了面向对象实现的优势。


050204_【掌握】数组排序案例 数组中可以保存多个数据内容,这样在进行操作时就可以进行数组数据的排序保存,本课程主要分析数组排序的原理,并讲解数组排序程序的实现


050205_【掌握】数组反转案例 数组转置是一种常见的数据结构,利用算法的形式将数组首位保存的数据进行交换,在本课程主要讲解数组转置程序的实现思路以及具体程序


050301_【掌握】二维数组 两个数组的嵌套形式就可以形成二维数组,二维数组是一种矩阵结构的表现,本课程主要讲解二维数组的特点、定义语法,以及二维数组的数据访问操作


050401_【掌握】JDK内置数组操作方法 数组是最为常用的程序结构,随着开发语言的不断进步,不同的语言也针对于数组的操作方法提供有支持,本课程主要讲解了在JDK中支持的数组拷贝与数组排序操作


050501_【掌握】方法可变参数 为了进一步实现方法使用的灵活性,在JDK 1.5后提供了更加灵活的动态参数结构,本课程主要讲解方法可变参数的意义,以及可变参数与数组的关系。


050601_【掌握】对象数组 单一的对象可以描述一个实例,如果要针对于多个实例对象进行管理,就可以采用对象数组的形式,本课程将为读者讲解对象数组的定义形式与使用


050701_【掌握】引用关联 在Java程序设计上,初学者最难理解的就是引用数据的使用,为了方便读者理解此类操作,本课程将采用类关联的形式描述现实事物。


050702_【掌握】自身关联 不同类之间允许关联,自身类结构也同样可以实现关联,本课程以引用关联的基础结构为原型,将为读者讲解自身关联存在的意义以及使用。


050703_【理解】合成设计模式 面向对象设计的本质在于模块化的定义,将一个完整的程序类拆分为若干个子类型,通过引用关联就形成了合成设计,本课程主要讲解合成设计模式的使用


050801_【掌握】数据表与类映射 在现实项目开发中对于简单Java类的定义都可以依据数据表的形式进行转换,本课程主要讲解了“dept-emp”的数据表映射实现与关系配置


050802_【掌握】一对多映射转换 数据表之中一对多的关联关系是最为常见的存储模型,本课程将通过一对多的数据表映射与简单Java类的转换进行代码映射与数据引用关联的相关讲解


050803_【掌握】多对多映射转换 多对多可以通过三张数据表的形式实现数据关联,本课程将通过具体的数据表存储案例讲解多对多映射关系的映射以及数据引用关联的数据配置。




060101_【掌握】String类对象实例化 本课程主要讲解String类的作用,同时给出了String类对象实例化的两种方式:直接赋值实例化、构造方法实例化,同时又为读者分析了String类中不同JDK版本的源代码实现,最后又讲解了JDK13之后提供的文本块预览功能。


060102_【掌握】字符串比较 字符串对象的实例化形式特殊,所以对于其比较的操作也有一些需要注意的问题,本课程通过内存关系比较,详细的解释了“==”与“equals()”的区别


060103_【掌握】字符串常量 常量是不会修改的内容,JDK为了方便开发者使用字符串提供了自动实例化的操作形式,本课程通过代码验证了字符串数据的类型,以及实际开发中字符串比较操作


060104_【掌握】String对象实例化方式比较 String类对象实例化有两种模式,为了帮助读者更好的理解String类实例化操作的特点,本课程主要讲解了String两种实例化方式的区别,并通过内存关系图与代码进行验证


060105_【掌握】字符串常量池 为了防止过多的字符串产生而造成无用的堆内存占用,JDK对于String也进行了结构上的优化,本课程主要通过实际代码分析String类两种常量池的区别


060106_【掌握】字符串修改分析 常量的内容一旦定义则不可以修改,但是鉴于String的特殊性,在Java中通过重新实例化的方式实现了字符串的修改,本课程将通过内存关系分析字符串对象的改变过程


060107_【掌握】主方法组成分析 主方法是程序运行的开始点,也是所有开发者最早接触到的方法结构,在本课程中将对主方法的组成进行讲解,同时讲解了程序初始化参数的接收


060201_【掌握】JavaDoc简介 JavaDoc文档是Java语言提供的语言使用手册与类库说明,在开发中需要反复查看,本课程主要是为读者说明了Java Doc文档的基本组成


060202_【掌握】字符串与字符 字符串是一组字符的组成结构,本课程主要讲解了String类与字符相关的构造、toCharArray()、charAt()方法的使用,并且利用字符串大小写转换分析了字符处理的意义。


060203_【掌握】字符串与字节 字节是网络数据传输的主要数据类型,字符串也提供有与字节的转换操作,本课程主要讲解了String类与字节相关的构造、getBytes()方法的使用


060204_【掌握】字符串比较 字符串是引用数据类型,不能简单的直接依靠“==”进行比较,本课程主要讲解了equals()、equalsIgnoreCase()、compareTo()方法的使用


060205_【掌握】字符串查找 String类可以在一个完整的字符串中进行内容的查找,本课程主要讲解了contains()、indexOf()、lastIndexOf()、startsWith()、endsWith()方法的使用。


060206_【掌握】字符串替换 字符串中会有一系列的组成字符,这些字符可以依据指定的规则进行更换,本课程主要讲解了replaceAll()、replaceFirst()方法的使用


060207_【掌握】字符串拆分 字符串可以依据组成规则转为若干个子字符串进行保存,本课程主要讲解了split()方法的使用,并且详细讲解了字符串拆分中转义字符的作用和使用


060208_【掌握】字符串截取 一个字符串为了清晰的描述数据组成会提供有一系列的标记性信息,如果需要从里面获取有意义的部分内容就可以通过截取实现,本课程主要讲解了substring()方法的使用


060209_【掌握】字符串格式化 在传统编程语言中都提供有格式化输出操作功能,Java是从JDK 1.5之后引入了格式化输出操作,本课程为读者分析了格式化输出的作用,同时利用具体的代码讲解了格式化输出操作的使用。


060210_【掌握】String其他操作方法 本课程主要讲解了trim()、toUpperCase()、toLowerCase()、length()、isEmpty()等方法的使用,并且利用给定的方法自定义了initcap()方法。




070101_【掌握】继承问题的引出 继承性是面向对象的第二大特点,为了帮助读者更好的理解继承性的作用,在本程序中将通过具体的类结构分析继承性的主要作用。


070102_【掌握】类继承定义 利用继承性可以实现类结构的重用定义,在本课程主要讲解如何在Java中实现类继承操作以及继承的使用特点


070103_【掌握】子类对象实例化流程 继承关系中会产生父类与子类两种实例化对象,本课程主要讲解子类对象实例化处理流程以及父类构造调用


070104_【掌握】继承限制 虽然继承可以实现代码的重用机制,但是考虑到程序结构的合理性,Java针对于继承结构也有若干限制,本课程主要通过实例讲解继承的结构限制、对象产生限制等概念


070201_【掌握】覆写功能简介 类结构之中利用继承可以实现代码结构的重用,而为了让某些派生的子类可以拥有自己更加完善的处理结构,那么就可以通过覆写技术来实现,本课程为读者分析了覆写的作用。


070202_【掌握】方法覆写 在开发中父类定义时并不会考虑到所有子类的设计问题,此时子类就需要更多的考虑功能的扩充与操作的统一,所以方法的覆写就成为了子类扩充的有效技术手段,本课程主要讲解方法覆写的意义以及实现格式


070203_【掌握】方法覆写限制 方法覆写可以改进父类中方法设计的不足,但是为了保持程序的结构性,针对于方法覆写也提供有限制,本课程将为读者讲解方法覆写的相关限制。


070204_【掌握】属性覆盖 子类也可以依据自身需求对父类中的属性进行重名定义,该类操作称为属性覆盖,本课程主要讲解属性覆盖操作的实现,并且总结了super与this关键字的区别。


070301_【掌握】final关键字 为了保护父类的定义,Java提供有final关键字,本课程主要讲解final关键字声明类、方法、常量的使用特点,并且通过具体的代码演示了关于程序中全局常量的作用。


070401_【理解】Annotation简介 为了实现良好的程序设计结构,程序的开发经历过许多结构上的变化,本课程主要介绍了Annotation的产生背景。


070402_【理解】准确覆写 覆写可以带来子类功能的完善,同时也为了保证父类方法名称的继续可用,为了在程序结构上加以保证所以提供“@Override”注解,本课程将分析此注解作用。


070403_【理解】过期声明 程序代码开发不是一次性的产物,需要不断的进行更新迭代,这样就会出现一些旧的并且不再推荐使用的结构,所以Annotation中提出了过期操作的概念,本课程主要讲解了“@Deprecated”注解的使用。


070404_【理解】压制警告 程序编译时为了保证结构的安全,会在编译时对错误的结构进行警告提示,如果开发者有需要也可以进行警告压制,本课程主要讲解了“@SuppressWarnings”注解的使用。


070501_【掌握】多态性简介 多态性是面向对象中的重要组成技术,本课程主要讲解多态性的相关概念,同时讲解了对象多态性的概念,分析向上转型与向下转型的操作特点与操作限制。


070502_【掌握】对象向上转型 父类定义了标准,子类定义了个性化的实现,本课程主要讲解了方法覆写与对象向上转型的关系,同时分析了对象向上转型的使用特点。


070503_【掌握】对象向下转型 向上转型可以实现操作标准的统一性,而向下转型可以保持子类实例的个性化,本课程主要讲解对象向下转型的特点,与ClassCastException异常产生分析。


070504_【掌握】instanceof关键字 为了保证向下转型的安全性Java提供了instanceof关键字,本课程主要讲解instanceof关键字的使用,同时解释了null与instanceof判断之间的关系


070601_【掌握】Object类简介 Object是系统中最重要的程序类,也是所有类的父类,本课程主要讲解了Object类在参数统一上的作用,并且为读者介绍了其与简单Java类之间的联系。


070602_【掌握】获取对象信息 在进行对象打印时可以直接获取对象信息,这就需要toString()方法的支持,本课程主要讲解了Object类中toString()方法的作用以及覆写操作实现。


070603_【掌握】对象比较 为了保证对象比较操作的标准型,在Object类中提供了equals()比较方法,本课程通过具体的代码实例为读者剖析了对象比较的判断步骤以及具体实现


070701_【掌握】学生类继承实例 继承是实现类功能扩充的重要技术手段,本课程主要通过人与学生的继承关系实现了类的继承操作,同时利用方法覆写实现了所需要的子类功能扩充。


070702_【掌握】管理人员与职员 继承是实现类功能扩充的重要技术手段,本课程主要通过雇员、管理人员以及职员类的对应关系分析了继承关系。


070703_【掌握】字符串统计 本课程主要通过一个字符串中的字母数据统计功能,分析了程序操作功能,并利用类继承关系实现结构重用处理。


070704_【掌握】数组操作 数组可以利用索引操作,为了回避索引的问题可以通过类进行数组封装,本课程主要通过数组操作类的形式讲解了如何动态扩充数组大小,以及如何利用覆写实现方法功能完善。






080101_【掌握】抽象类简介 抽象类是一种比普通类的定义更加丰富的类结构,本课程分析了传统普通类的设计及使用问题,并且对抽象类的基本形式做出了介绍。


080102_【掌握】抽象类基本定义 抽象类是为方法覆写而提供的类结构,可以对子类的定义结构起到结构约定的作用,本课程主要讲解抽象类的基本定义,并且分析了抽象类与普通类的区别以及使用方法。


080103_【掌握】抽象类相关说明 抽象类是一种特殊的类结构,也提供有多种定义形式,本课程主要讲解了抽象类在结构定义上的若干形式与限制。


080104_【掌握】模版设计模式 抽象类除了可以限制子类的方法覆写之外,也可以提供有普通方法,本课程主要利用抽象类讲解了模板设计模式,为日后学习Servlet打下基础。


080201_【掌握】包装类简介 为了统一参数传输类型,需要针对于基本数据类型实现引用传递,所以Java提供了包装类的概念,本课程主要分析包装类的基本组成原理,同时讲解了包装类的定义。


080202_【掌握】装箱与拆箱 基本数据类型与包装类的互相转换是Object统一的重要依据,本课程主要讲解了装箱与拆箱的基本操作流程,以及如何利用自动装箱实现Object接收参数的统一。


080203_【掌握】数据类型转换 包装类除了有引用支持外,还提供有数据类型转换的功能,本课程主要讲解了String与各个基本数据类型之间的转换操作,同时分析了基本数据类型转为字符串的正确做法。


080301_【掌握】接口基本定义 接口是一种开发中必定使用到的结构,属于Java中比较特殊的程序结构,本课程主要讲解接口的基本概念、子类实现以及接口对象实例化处理。


080302_【掌握】接口相关说明 接口在进行标准定义时往往会与抽象类及普通类整合应用,本课程详细分析了接口、抽象类、普通类三者之间的联系并通过案例进行实例分析。


080303_【掌握】适配器设计模式 在接口使用的过程中,一个子类需要强制性覆写接口中的所有抽象方法,这样在现实的开发中对于子类的负担就会较大,本课程为读者分析了传统接口实现的问题,同时讲解了如何利用抽象类实现的适配器类的作用。


080304_【掌握】工厂设计模式 项目开发中需要考虑类实例化对象的解耦和问题,所以会通过工厂设计模式隐藏接口对象实例化操作细节,本课程主要讲解工厂设计模式的产生原因以及实现。


080305_【掌握】代理设计模式 项目开发中为了防止核心业务与辅助业务之间的紧密联系,所以提供有代理设计模式,本课程将为读者讲解代理设计模式的产生意义与具体实现


080306_【掌握】接口开发标准 项目功能设计中接口是需要最先设计的,这样就定义好了操作的执行标准,本课程将为读者讲解接口作为标准设计的意义以及代码实现。


080307_【掌握】接口定义加强 JDK 1.8后为了满足函数式的语法要求接口进行了结构性的改变,本课程主要分析了实际开发中接口设计问题,同时讲解了如何使用default与static进行方法定义


080308_【掌握】抽象类与接口区别 抽象类和接口在开发和面试之中都非常的重要,考虑到读者对于知识的结构理解,本课程以总结的形式强调了接口与抽象类的区别。


080401_【掌握】泛型问题的引出 Object类可以带来参数类型的统一处理,但是会存在有安全隐患,本课程主要分析了Object接收任意对象实例以及向下转型所带来的问题。


080402_【掌握】泛型基本定义 泛型可以在编译时检测出程序的安全隐患,使用泛型技术可以使程序更加健壮,本课程讲解了如何利用泛型来解决ClassCastException问题。


080403_【掌握】泛型通配符 泛型出现虽然保证了代码的正确性,但是对于引用传递会带来参数统一问题,本课程主要在泛型基础上讲解引用传递所带来的新问题,并讲解了泛型上限与泛型下限概念与应用。


080404_【掌握】泛型接口 泛型可以定义在任意的程序结构体之中,本课程主要讲解在接口上定义泛型以及两种子类实现形式。


080405_【掌握】泛型方法 在一些特定的环境中,类与接口往往不需要进行泛型定义,然而对于该结构体中的方法又可能出现有泛型要求,所以本课程主要讲解如何在不支持泛型的类上如何定义泛型方法的操作。


080501_【掌握】获取类名称 接口定义了类的操作标准,接口的子类需要依据标准实现方法覆写以完善所需功能,本课程主要通过一个基础案例分析接口的使用。


080502_【掌握】图形绘制 在整体设计中绘图是一个公共的标准,这样就需要通过接口来描述,而后不同的图形实现此标准后完善各自的功能就可以实现统一的处理结构,本课程主要模拟一个绘图的操作形式讲解了接口以及工厂类的应用。


080503_【掌握】图形数据计算 抽象类与接口相比较里面可以提供有普通方法,由于本程序不包含有多继承的概念,所以本课程主要利用图形结构的方式讲解了抽象类的实际应用。




090101_【掌握】包功能简介 包是在已有程序类的基础上进行了的目录管理操作,提供了程序代码的有效分类,本课程主要为读者分析了包在项目实际开发中的用途。


090102_【掌握】包的定义 Java中为了方便进行包的定义,提供有package关键字,本课程通过具体的包的定义操作讲解了程序打包以及包中程序类的运行操作


090103_【掌握】包的导入 在项目中通过包实现了程序结构的有效结构管理,而经过包拆分后的程序彼此之间会存在有相互调用的情况,本课程主要讲解了不同包互相引用类的操作,并且分析了在包引用过程中的相关实现问题。


090104_【掌握】静态导入 static方法不受到类实例化对象的定义限制,而在传统使用中使用static方法都需要通过类名称的形式调用,本课程主要讲解对于由static方法组成类实现的静态导入处理,并分析了与传统导入类操作形式的区别。


090105_【掌握】jar文件 为方便对功能模块的整体管理,可以将程序进行打包管理,Java提供了自己的压缩文件“jar”,本课程主要讲解jar文件的作用、生成方式以及使用。


090106_【掌握】系统常见包 Java中提供了大量的系统支持类,并且这些类JavaDoc文档中进行了详细描述,本课程主要针对于一些系统的常见开发包的作用进行介绍。


090201_【掌握】访问控制权限 面向对象的封装性是进行类结构的保护,封装性在Java中是通过访问控制权限来描述的,本课程主要讲解四种访问控制权限的使用范围,并着重讲解了protected访问权限。


090301_【掌握】单例设计模式 在一些特殊的环境中往往不需要进行多个实例化对象的定义,此时就可以对实例化对象的个数进行控制,本课程主要讲解了构造方法私有化的主要作用与操作实现。


090302_【掌握】多例设计模式 在单例设计模式的基础上继续进行进一步的实现扩展就可以实现有限个实例化对象的定义,本课程在单例设计模式的基础上进一步讲解了多例设计模式的使用。


090401_【掌握】定义枚举类 许多语言都提供有枚举结构,然而Java从JDK 1.5之后才提供有枚举概念,本课程将为读者讲解枚举的主要定义以及与多例设计模式的关系。


090402_【掌握】Enum类 Enum类实现了枚举公共操作方法的定义,也同样基于构造方法私有化的形式完成,本课程主要讲解Enum类与enum关键字的联系。


090403_【掌握】扩展枚举结构 Java中的枚举结构与其他语言相比得到了进一步的结构提升,本课程主要讲解如何在枚举中定义构造、属性、普通方法的操作,以及实现接口与定义抽象方法的使用。


090404_【掌握】枚举应用案例 枚举作为一种提供有限实例化对象个数的类结构,可以实现操作范围的限定,本课程使用枚举的概念实现一个具体的应用开发案例。


090501_【理解】Jigsaw设计简介 Java9之后的版本为了提升程序的运行性能,专门提供了模块化的设计结构,本课程为每一位学员详细分析了JDK 1.8及以前版本的类加载设计,并且解释模块化设计的意义。


090502_【理解】模块基本定义和使用 模块化的设计是一种在已有类结构基础上扩展的一种程序结构,本课程为每一位学员详细的解释了module-info程序类的作用,以及模块编译和运行的处理操作。


090503_【理解】模块引用 模块结构可以实现更加高级的类程序文件管理,但是不同模块之间会存在引用结构的关联,本课程通过两个具体模块的定义讲解了两个模块之间的调用操作。


090504_【理解】模块打包 模块开发完成之后要交付最终的程序使用,本课程为读者详细的讲解了*.jar与*.jmod文件之间的关联,并且通过具体的操作进行了打包处理,最终利用jlink实现了新的JRE环境的定义以及程序运行。


090601_【理解】用例图.mp4 用例图是UML之中用于进行操作结构描述的图形,通过用例结构可以清楚的描述用户在系统中所具备的基本权限,本课程主要基于PowerDesigner设计工具实现了用例图的描述。


090602_【理解】类图.mp4 程序项目之中会存在有大量的类、接口以及抽象类的定义,本课程主要讲解如何在PowerDesigner设计工具中,实现类图信息的结构描述,同时讲解了类图转换工具的使用。


090603_【理解】时序图.mp4 程序类的调用以及方法的执行都会有其操作的流程,所以UML中提供有时序图的概念,利用时序图描述代码调用过程,本课程主要讲解时序图的使用。




100101_【掌握】认识异常 即便是一个设计结构精良的程序也会存在有各种意想不到的异常,本课程主要通过之前课程中讲解的NullPointerException、ClassCastException讲解了异常的产生以及不处理所带来的程序问题


100102_【掌握】异常处理 为了简化程序异常异常处理操作,Java提供有方便的异常处理支持,本课程主要讲解异常处理关键字try、catch、finally的作用,同时给出了异常处理的标准格式。


100103_【掌握】处理多个异常 一个程序代码有可能会产生有多种异常类型,本课程通过一个基本的初始化参数和数学计算的模式,讲解在try语句中处理多个catch操作的情况以及存在问题分析


100201_【掌握】异常处理流程 Java中面向对象的核心设计思想就是“统一标准”,对于异常的合理处理需要掌握其操作流程,本课程主要分析了异常处理流程,通过分析讲解了Exception处理异常的原理


100202_【掌握】throws关键字 方法上是类主要的操作形式,方法的执行中也有可能产生各种异常,所以需要通知每一位方法调用者需要清楚的知道本方法的问题,这样Java就提供了throws关键字,本课程主要讲解了throws关键字的作用


100203_【掌握】throw关键字 在异常处理中会自动实例化异常类的对象,而很多时候开发者在进行更加深入设计时需要进行手工的异常处理,这就需要throw关键字,本课程主要讲解throw关键字使用


100204_【掌握】异常处理模型 项目设计中需要一个设计良好的异常操作结构,本课程主要讲解了异常在实际开发中的标准定义格式,同时本次所讲解的案例属于重要的代码模型。


100301_【掌握】RuntimeException 系统提供了Exception,而在Exception中又提供有若干子类,本课程主要讲解了RuntimeException类的作用以及与Exception的区别


100302_【掌握】自定义异常类 项目设计是一个长期的发展过程,项目中可能产生的异常也是无法预估的,而JDK所能够提供的只是符合于JDK需求的异常类型,这些异常类在实际项目开发中并不能完全满足需求,因此项目中需要用户自定义属于本项目业务需求的合理异常类,本课程主要讲解了自定义异常类的实现


100303_【掌握】assert关键字 断言是一种常见的软件功能,Java在最初并未引入断言这一功能,而是在随后的版本升级后提供的,本课程主要讲解了assert关键字的作用




110101_【掌握】内部类的基本定义 程序开发中为了更加准确的描述结构体的作用,提供有各种嵌套结构,而程序类也是允许嵌套的,本课程主要讲解内部类的定义形式、作用分析,以及相关的使用。


110102_【掌握】内部类相关说明 内部类除了可以被定义的外部类操作外,也可以被外部明确的实例化并使用,本课程主要进行内部类结构使用上进行更加详细的说明。


110103_【掌握】static定义内部类 内部类的结构可以在接口、抽象类和普通类中使用,利用static也可以实现外部类的定义,本课程通过一系列的案例分析了外部静态接口、外部静态抽象类等相关概念的实现。


110104_【掌握】方法中定义内部类 static定义的结构可以不受到类的使用制约,内部类在嵌套定义时,也可以使用static定义独立的类结构体,本课程主要讲解static定义内部类的特点,以及实例化方式。


110201_【掌握】匿名内部类 继承开发需要子类,但是过多的子类又有可能产生太多的额外代码,为了简化程序文件的定义,Java提供有匿名内部类的结构体,本课程主要讲解匿名内部类的产生意义以及具体定义。



110301_【掌握】Lambda表达式 Haskell是著名的函数式编程语言,有许多的开发者也坚持认为函数式编程更加简洁,为此在新版本的JDK中也引入了函数式编程支持,利用函数式编程可以简化类结构体的定义,本课程主要讲解了匿名内部类的定义问题,并且讲解了Lambda表达式的几种使用形式。


110401_【掌握】方法引用 引用是Java语言设计的核心灵魂,早期的JDK由于受到传统C/C++语言的影响,只提供有对象引用,在新的JDK版本中加强了引用这一概念的深入,提供了方法引用操作,本课程主要讲解Java8中四种方法引用的使用方式。


110501_【掌握】内建函数式接口 函数式接口是实现Lambda表达式的核心关键,Java在进行结构设计时充分考虑到了系统类对函数式编程的支持,提供有一系列的函数式接口,本课程主要讲解java.util.function定义的四个核心函数式接口的使用。


110601_【理解】链表基本概念 数据结构是通过合理的代码设计方便的实现集合数据的存储,同时也是程序开发人员的基本素质,本课程主要讲解了数组操作的问题同时对链表的实现进行了基本介绍。


110602_【理解】链表基本结构 链表是一种复合结构,除了数据处理之外最为重要的就是节点引用关系的配置,本课程利用内部类的操作结构实现了链表的基本模型,同时讲解了使用内部类的依据。


110603_【理解】增加链表数据 链表是对节点的集中性管理,节点中实现了数据封装以及彼此引用关联,本课程主要讲解链表中的数据增加,重点分析了根节点与子节点的关系以及顺序处理


110604_【理解】统计链表元素个数 链表中所保存的集合内容,最终都需要通过数组的形式返回,所以需要为链表追加数据统计的功能,本课程主要讲解如何实现链表数据个数的统计与信息获取


110605_【理解】空链表判断 空(不是null)是对集合操作状态的一种判断,而链表作为数据存储集合,应该更加方便的提供有状态判断的方法,本课程主要讲解如何在链表中实现空集合数据的判断


110606_【理解】获取链表数据 链表只是作为一个数据载体存在,在进行数据操作时需要将链表中的数据取出,本课程主要讲解如何将链表中的全部数据以数组的形式返回


110607_【理解】根据索引查询数据 链表实现的是动态对象数组操作,数组可以直接通过索引进行数据返回,本课程主要讲解链表与对象数组的关系,以及索引与链表数据的关系


110608_【理解】修改链表数据 链表中的数据都是依据顺序实现的存储,并且也都有各自的索引编号,那么也就可以依据索引编号实现数据修改,本课程主要讲解如何利用一个索引进行指定数据的修改


110609_【理解】链表数据查询 链表中可以保存有各种数据类型,这样在进行内容查询时就需要提供有标准对象比较方法,本课程主要讲解equals()方法在链表数据查询中的使用以及查询原理


110610_【理解】链表数据删除 链表除了可以自由延伸之外,也可以随意进行内容的删除,这一点要比数组更加方便,本课程主要讲解链表数据的两种删除方式:根元素删除与非根元素删除


110611_【理解】清空链表数据 链表依靠节点的引用关联实现了多个数据的保存,当需要删除全部数据时就可以通过根节点的控制实现链表清空的实现,本课程主要讲解链表数据的整体删除操作。


110701_【掌握】链表应用案例 本程序是针对于现实生活的合理抽象,可以依据接口和链表的形式实现集合标准的定义,这样就可以实现更加合理的并且便于扩展的类结构,本课程将针对于代码的实现进行讲解,帮助读者深入理解接口应用。






120101_【了解】Java开发工具简介 Java编程语言经过了二十多年的发展,与之同期进行的还有大量的开发工具出现,本课程为读者讲解了Java开发工具的产生背景以及开发工具的不断演变。


120102_【掌握】IDEA安装与配置 IDEA是现代项目开发中使用最广泛的开发工具,本课程为读者演示了IDEA开发工具的下载与安装,同时讲解了如何在第一次启动IDEA时进行开发环境配置。



120103_【掌握】开发Java程序 IDEA中最为重要的功能就是可以实现Java项目的开发,本课程通过一系列的具体操作演示讲解了IDEA开发工具中的Java类的创建、代码自动生成等。


120104_【掌握】jar包管理 jar是项目发布与管理的标准文件,在IDEA工具中提供有Jar包的创建操作,本课程主要讲解Jar的导出以及如何在模块中进行第三方Jar包的配置操作。本课程主要讲解如何利用IDEA进行Java模块的创建、JDK配置,同时利用了IDEA工具进行了Java程序的开发以及运行操作。


120105_【掌握】Debug代码调试 程序开发每天都在不断的面对程序的bug,很多时候往往会因为某个变量的操作忽视而带来了执行结果的错误,这样就需要进行代码的调试跟踪,本课程主要讲解如何在IDEA之中进行代码的debug调试操作。


120106_【掌握】JUnit测试工具 用例测试是一种常见的业务测试手段,利用模拟业务数据的形式进行测试编写,以保证程序执行的正确性,本课程主要讲解了用例测试的意义以及junit测试工具的使用。



120201_【掌握】SVN服务简介 项目的开发是一个长期且不断更新的过程,为了保证项目代码的正确性,需要引入版本控制工具,本课程主要为读者分析了实际项目开发中的项目管理工具的作用。


120202_【掌握】配置SVN服务端 项目管理工具需要建立项目管理目录,本课程讲解了SVN服务器的搭建,包括如何定义开发目录、如何进行服务器的配置与启动。


120203_【掌握】IDEA整合SVN IDEA默认支持了SVN客户端,本课程主要讲解如何在IDEA之中启用SVN客户端以、与SVN服务器的联系以及如何进行项目的发布。


120204_【掌握】代码冲突解决 项目开发环境中需要不断的解决代码的更新冲突,引入SVN工具的目的也是为了进行冲突的解决,本课程将为读者讲解冲突的产生以及冲突的解决方式。




130101_【掌握】进程与线程 计算机操作系统始终都在改进,操作系统的每一次改进都在提升现有的硬件处理性能,本课程主要讲解单进程、多进程、多线程的关系及基本概念。



130201_【理解】多线程实现分析 多线程的程序结构依赖于核心的线程体,而线程体在Java程序中是存在有继承限制的,本课程为读者分析了多线程程序实现的基本结构。


130202_【掌握】Thread实现多线程 Thread是线程的主要操作类,也是线程实现的一种方案,本课程主要讲解如何利用Thread类继承实现多线程应用,以及在JVM中Thread类启动线程的操作代码分析。


130203_【掌握】Runnable实现多线程 面向对象的设计通过接口实现标准定义与解耦和操作,所以多线程又提供了Runnable接口实现多线程开发,本课程主要讲解了Runnable接口实现多线程以及如何通过Thread类启动多线程的操作。


130204_【掌握】Thread与Runnable联系 Thread与Runnable作为最初的多线程实现方案,两者存在有联系与区别,所以本课程将对两种实现多线程技术方案的区别进行分析,同时分析了彼此关系。


130205_【掌握】Callable实现多线程 Java针对于多线程执行完毕后不能返回信息的缺陷,提供了Callable接口,本课程主要讲解JDK 1.5后提供的Callable接口与Runnable接口的不同,同时讲解了FutureTask类取得返回值的操作,同时本课程也是JUC编程框架的核心组成。


130206_【掌握】多线程运行状态 多线程的执行需要操作系统的资源调度,而在整个调度过程之中就会产生有线程执行的各个状态,本课程主要讲解线程各种状态的基本转换流程。


130301_【掌握】线程命名和取得 线程是不确定的执行状态,名称就成为了线程的主要标记,本课程主要讲解了currentThread()、getName()与setName()方法的使用,同时分析了主线程与JVM进程。


130302_【掌握】线程休眠 程序一旦进行了线程的启动,那么都会以最快的方式执行完成,而有些时候需要对执行的线程减缓一些执行速度,所以Thread提供了休眠操作,本课程主要讲解了sleep()方法的使用特点。



130303_【掌握】线程中断 线程并不是启动后就可以一直持续下去的,在线程中也可以进行执行的中断操作,本课程主要讲解线程中断执行操作流程以及具体操作方法的使用


130304_【掌握】线程强制执行 多线程启动后会交替进行资源抢占与线程体执行,如果此时某些线程异常重要也可以进行强制性的执行处理,本课程主要讲解多线程中join()方法的使用


130305_【掌握】线程礼让 多线程在彼此交替执行时往往需要进行资源的轮流抢占,如果某些不是很重要的线程抢占到资源但是又不急于执行时,就可以将当前的资源暂时礼让出去,交由其它线程先执行,本课程主要讲解yield()方法的使用以及分析了与join()方法的区别。


130306_【掌握】线程优先级 所有创造的线程都是子线程,所有的子线程在启动时都会保持同样的优先权限,但是如果现在某些重要的线程希望可以优先抢占到资源并且先执行,就可以修改优先级来实现,本课程主要讲解了优先级与线程执行的关系。


130401_【掌握】多线程同步问题引出 在项目运行中会有多个线程进行同一资源操作的能力,此时就会引发同步的问题,本课程通过一个卖票程序分析了多个线程访问同一资源时所带来的问题。


130402_【掌握】线程同步处理 处理并发资源操作的最好方法就是进行操作空间的锁控制,本课程主要讲解如何利用synchronized定义同步代码块与同步方法实现多线程开发


130403_【掌握】线程死锁 死锁是在多线程开发中较为常见的一种不确定出现的问题,其所带来的影响就是导致程序出现“假死”状态,本课程主要为读者演示了死锁的产生情况以及问题分析



130501_【掌握】生产者与消费者模型简介 生产者与消费者模式是一种多线程彼此之间的协作操作的经典程序模型,同时也是在实际项目开发中最为常见的一种设计模式,本课程为读者详细的讲解了生产者与消费者模型的基本设计理念,同时分析了线程协作的处理形式。


130502_【掌握】生产者与消费者基础模型 本课程主要是搭建“生产者-消费者”编程的基础模型,基于多线程的方式实现了数据操作,本程序中通过具体的问题为读者分析了模型中的问题并思索问题解决之道


130503_【掌握】解决数据同步问题 生产者若想将数据生产正在生产时就必须将操作代码锁定,消费者在取出数据前也需要进行操作锁定,本课程将采用synchronized同步的方式解决“生产者-消费者”代码中出现的不同步问题。


130504_【掌握】解决线程重复操作问题 Object类中定义有线程的等待与唤醒操作支持,本课程为读者分析了线程等待与唤醒机制的作用,同时介绍了Object类中的wait()、notify()、notifyAll()三个方法的作用以及具体应用。


130601_【掌握】优雅的停止线程 Thread类是从JDK 1.0时就提供的工具类,最初的设计由于考虑不周出现了许多可能产生问题的方法,本课程主要讲解线程生命周期,以及线程停止操作的合理实现方案



130701_【掌握】守护线程 项目中的执行线程除了进行明确的业务处理线程之外,还需要提供有大量的后台进程辅助这些业务线程,本课程主要讲解了守护线程的定义与实现


130801_【掌握】volatile关键字 本课程主要分析了在Java中变量操作的执行步骤以及可能存在的问题,同时讲解volatile关键字的处理方式以及volatile属性定义。


130901_【掌握】线程加减面试题 本程序的核心意义在于实现多个线程并发访问下的数据同步,在有限个线程执行的有限次数的情况下,最终的结果应该为0,本课程将通过具体代码实现。


130902_【掌握】电脑生产面试题 本课程是生产者与消费者模型的进一步延伸,基于同步处理机制下的等待与唤醒操作实现,需要防止重复操作的情况出现,并且采用了守护线程模型实现了信息统计。


130903_【掌握】竞拍抢答面试题 抢答器是一个在生活中较为常见的场景,每一次抢答题目时只允许有一位线程获取资源,此时就需要进行并发资源下的数据同步处理。

Java程序设计开发实战,李兴华原创编程图书_运算符_04


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月15日 0

暂无评论

推荐阅读
  2Vtxr3XfwhHq   2024年05月17日   53   0   0 Java
  Tnh5bgG19sRf   2024年05月20日   109   0   0 Java
  8s1LUHPryisj   2024年05月17日   46   0   0 Java
  aRSRdgycpgWt   2024年05月17日   47   0   0 Java
DzeAR5woCouH