Java程序设计开发实战

Java是现在最为流行并且使用最为广泛的编程语言,其以完善的结构以及良好的支持度受到广大互联网公司的青睐,本课程是一门综合讲解Java技术的基础学科,将完整的为读者讲解Java的发展历史、程序结构、方法、面向对象、内存分析等Java基础开发知识。

1、    全套课程基于IDEA讲解,让开发者适应新时代开发潮流;
2、    源代码全面剖析,对系统类的设计与实现进行了更加详细的讲解;
3、    增加了数据结构使用案例,使得学习者在学习类集之前可以更加深刻的理解数据结构的意义;
4、    更加丰富的图形演示便于读者理解程序执行流程;
5、    深入分析了多线程在项目开发中的影响,以及新类库对多线程支持的改进。
6、    提供了基于Macbook系统的开发支持,为不同环境下的编程开发提供有力支持;

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