【JAVA8】 面向对象编程【极限IT JAVA专业第3课】

JAVA的核心思想都在这门课程里边

默认教学计划
939人加入学习
(10人评价)
价格 免费
教学计划
课程介绍

面向对象是Java语言之中最为重要的特征,本课程主要讲解面向对象的核心知识,并且利用大量的代码、数据结构课程深入分析Java面向对象特征。

一、类与对象

03001_面向对象简介
    本课程主要讲解了面向对象与面向过程的宏观区别,同时解释了面向对象三个主要特征;

03002_类与对象(认识类与对象)
    本课程主要是利用概念区分类与对象的区别。

03003_类与对象(类与对象的定义及使用)
    本课程主要讲解在Java中类的定义格式以及对象的产生格式,同时讲解了引用数据类型的内存分配与空指向问题的产生原因。

03004_类与对象(对象引用分析)
    本课程主要进一步分析引用传递的操作过程以及垃圾空间的产生分析。

二、深入分析类与对象
03005_封装性
    封装性是面向对象的第一大特征,本课程是封装性的第一次讲解,主要是讲解private关键字的使用,同时给出了封装操作的开发原则。

03006_构造方法与匿名对象
    本课程主要讲解构造方法的主要作用、语法要求、以及使用注意事项。同时讲解了匿名对象的定义及使用限制。

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


三、数组的定义及使用
03008_数组的定义与使用(基本概念)
    本课程主要讲解数组的基本概念、定义语法、内存分配使用。

03009_数组的定义与使用(二维数组)
    本课程主要讲解二维数组的定义特点与定义语法;

03010_数组的定义与使用(数组与方法的引用操作)
    本课程主要讲解数组的引用传递,借助于方法实现进一步的引用分析,讲解了如何利用方法接收数组或返回数组的操作。

03011_数组的定义与使用(数组相关操作方法)
    本课程主要讲解了在JDK中支持的数组拷贝与数组排序操作。

03012_数组的定义与使用(对象数组)
    本课程主要是为读者讲解对象数组的定义形式与使用。


四、String类的特点
03013_String类的特点(String类对象的两种实例化方式)
    本课程主要讲解String类对象直接赋值与构造方法实例化的语法;

03014_String类的基本概念(字符串比较)
    本课程通过内存关系比较,详细的解释了“==”与“equals()”的区别;

03015_String类的基本概念(String常量为匿名对象)
    本课程通过代码验证了字符串数据的类型,以及实际开发中字符串判断的比较。

03016_String类的基本概念(两种实例化方式的区别)
    本课程主要讲解了String两种实例化方式的区别,并且使用内存关系图与代码进行验证。

03017_String类的基本概念(字符串内容不可改变)
    本课程将通过内存关系分析字符串对象的改变过程。


五、String类常用方法
03018_String类的常用方法(字符与字符串)
    本课程主要讲解了String类与字符相关的构造、toCharArray()、charAt()方法的使用;

03019_String类的常用方法(字节与字符串)
    本课程主要讲解了String类字节相关的构造、getBytes()方法的使用。

03020_String类的常用方法(字符串比较)
    本课程主要讲解了equals()、equalsIgnoreCase()、compareTo()方法的使用。

03021_String类的常用方法(字符串查找)
    本课程主要讲解了contains()、indexOf()、lastIndexOf()、startsWith()、endsWith()方法的使用。

03022_String类的常用方法(字符串替换)
    本课程主要讲解了replaceAll()、replaceFirst()方法的使用

03023_String类的常用方法(字符串截取)
    本课程主要讲解了substring()方法的使用;

03024_String类的常用方法(字符串拆分)
    本课程主要讲解了split()方法的使用与相关注意事项。

03025_String类的常用方法(其它操作)
    本课程主要讲解了trim()、toUpperCase()、toLowerCase()、length()、isEmpty()等方法的使用,并且利用给定的方法自定义了initcap()方法。

六、this关键字
03026_this关键字(调用属性)
    本课程主要讲解“this.属性”的调用意义。

03027_this关键字(调用方法)
    本课程主要讲解了在本类调用本类方法与构造方法的使用与限定。

03028_this关键字(表示当前对象)
    本课程主要讲解了当前对象的概念,为随后讲解的链表与对象比较进行铺垫。

七、引用传递分析实例
03029_引用传递
    本课程使用了三个引用传递操作进一步分析了引用数据类型的操作。

03030_引用传递实际应用
    本课程将利用现实生活中的概念进行面向对象抽象以及合成设计模式的特点。


八、综合实战:简单Java类深入
03031_综合实战:数据表与简单Java类映射
    本课程主要讲解了“dept-emp”的数据表映射实现与关系配置。

03032_综合实战:一对多映射(省份-城市)
    本课程将通过一对多的数据表映射进行讲解。

03033_综合实战:双向一对多映射(类型-子类型-商品)
    本课程将通过更加复杂的一对多关系讲解数据表映射。

03034_综合实战:多对多映射(管理员-角色-组-权限)
    本课程将讲解多对多映射关系的实现。

九、对象比较
03035_对象比较
    本课程主要讲解对象比较的实现方式与具体实现操作。

十、static关键字
03036_static关键字(定义属性)
    本课程主要讲解static属性与非static属性的区别,并且利用内存关系进行讲解。

03037_static关键字(定义方法)
    本课程主要讲解static定义方法以及与非static属性及方法间的操作限制。

03038_static关键字(主方法)
    本课程主要讲解了主方法的实现组成意义,以及初始化参数的配置。

03039_static关键字(应用案例)
    本课程主要讲解static的技术的使用,包括统计对象个数与自动属性命名功能的实现。

十一、代码块
03040_代码块(普通代码块)
    本课程主要讲解普通代码块的使用特点以及可能出现的操作形式分析。

03041_代码块(构造块)
    本课程主要讲解构造块与构造方法的使用关系。

03042_代码块(静态块)
    本课程主要讲解static定义代码块的定义形式与特点;

十二、内部类
03043_内部类(基本概念)
    本课程主要讲解内部类的定义形式、内部类的作用分析,以及相关的使用;

03044_内部类(static定义内部类)
    本课程主要讲解static定义内部类的特点,以及实例化方式。

03045_内部类(方法中定义内部类)
    本课程主要讲解方法中内部类的定义形式,并讲解了JDK 1.8与之前版本访问参数上的区别。

十三、链表
03046_链表的定义与使用(链表基本概念)    
    本课程主要讲解了链表内部Node的主要作用以及递归输出。

03047_链表的定义与使用(链表基本实现)
    本课程主要讲解了链表实现的基本结构,主要讲解链表中基础的增加与输出操作。

03048_链表的定义与使用(确定程序结构)
    本课程主要讲解可用链表的实现结构分析,重点在于内部类的使用。

03049_链表的定义与使用(增加数据)
    本课程主要讲解链表数据增加的操作。

03050_链表的定义与使用(取得链表长度)
    本课程主要讲解链表长度的统计与取得;

03051_链表的定义与使用(判断空链表)
    本课程主要讲解如何利用根节点与数量判断链表是否为空。

03052_链表的定义与使用(内容查询)
    本课程主要讲解equals()方法在链表数据查询中的使用以及查询原理。

03053_链表的定义与使用(根据索引取得数据)
    本课程主要讲解链表与对象数组的关系,以及索引与链表数据的关系。

03054_链表的定义与使用(修改链表数据)
    本课程主要讲解如何利用一个索引进行指定数据的修改。

03055_链表的定义与使用(删除链表数据)
    本课程主要讲解链表数据的两种删除方式:根元素删除与非根元素删除。

03056_链表的定义与使用(对象数组转换)
    本课程主要讲解如何利用对象数组保存链表数据。

03057_链表的定义与使用(链表使用)
    本课程主要讲解链表与简单JAVA类的联合使用。

03058_链表的定义与使用(在映射中使用链表)
    本课程主要讲解如何利用链表进行一对多关系的数据映射实现,包括链表使用中存在的问题分析。

十四、继承性
03059_继承性(继承问题的引出)
    本课程主要是通过类的结构与联系讲解继承问题的由来。

03060_继承性(继承的实现)
    本课程主要讲解如何在Java中实现继承以及继承的使用特点。

03061_继承性(继承的限制)
    本课程主要讲解继承的结构限制、对象产生限制。

十五、覆写
03062_覆写(方法覆写)
    本课程主要讲解方法覆写的意义以及实现的定义格式,包括使用限制。

03063_覆写(属性覆盖)
    本课程主要讲解属性覆盖操作的实现。

十六、继承实战:数组操作

03064_综合实战:数组操作(基础父类)
    本课程主要以数组操作讲解继承实现的父类。

03065_综合实战:数组操作(排序子类)
    本课程主要讲解如何利用父类实现继承以改善子类功能,并强调了父类作为标准存在的意义。

03066_综合实战:数组操作(反转子类)
    本课程主要讲解如何利用父类实现继承以改善子类功能,并强调了父类作为标准存在的意义。

十七、辅助概念
03067_final关键字
    本课程主要讲解final关键字生命类、方法、常量的使用。

03068_对象多态性
    本课程主要讲解对象多态性的操作,向上转型与向下转型的操作特点,以及操作限制,同时讲解了instanceof关键字的使用。

十八、抽象类
03069_抽象类的定义及使用(基本概念)
    本课程主要讲解抽象类的基本定义,与普通类的区别以及使用方法。

03070_抽象类的定义及使用(使用限制)
    本课程主要讲解了抽象类在结构定义上的若干形式与限制。

03071_抽象类的定义及使用(模板设计模式)
    本课程主要利用抽象类模拟了模板设计模式,为以后讲解Servlet程序结构打下基础。

十九、接口

03072_接口的定义及使用(接口基本定义)
    本课程主要讲解接口的基本概念、与抽象类的联系、子类的使用、接口继承等操作。

03073_接口的定义及使用(标准定义)
    本课程主要讲解接口作为标准在开发中的使用,同时强调了接口在不同层之间存在的意义。

03074_接口的定义及使用(工厂设计模式)
    本课程主要讲解工厂设计模式的产生原因以及实现。

03075_接口的定义及使用(代理设计模式)
    本课程主要讲解代理设计模式的作用以及实现。

03076_接口的定义及使用(抽象类与接口区别)
    本课程主要以总结的形式强调了接口与抽象类的区别。

二十、Object类

03077_Object类(基本概念)
    本课程主要讲解了Object类的主要作用。

03078_Object类(toString()方法)
    本课程主要讲解了Object类中toString()方法的作用以及覆写操作实现。

03079_Object类(equals()方法)
    本课程主要讲解标准对象比较的操作实现。

03080_Object类(接收引用类型)
    本课程主要讲解了Object类对象接收数组以及接口对象的使用。

03081_Object类(完善链表)
    本课程主要讲解如何使用Object类来实现链表的数据类型统一操作。

03082_综合实战:宠物商店
    本课程主要结合链表以及面向对象的基本分析实现宠物商店的代码应用。

二十一、扩展概念
03083_匿名内部类
    本课程主要讲解匿名内部类的产生原因,以及实现形式。

03084_基本数据类型的包装类(定义简介)
    本课程主要分析包装类的基本组成原理,同时讲解了包装类的定义

03085_基本数据类型的包装类(装箱与拆箱)
    本课程主要讲解了装箱与拆箱的基本操作流程,以及如何利用自动装箱实现Object接收参数的统一。

03086_基本数据类型的包装类(数据类型转换)
    本课程主要讲解了String与各个基本数据类型之间的转换操作。


二十二、包的定义及使用
03087_包的定义及使用(包的定义)
    本课程主要讲解了包的作用以及包的使用。

03088_包的定义及使用(包的导入)
    本课程主要讲解了不同包互相引用类的操作。

03089_包的定义及使用(系统常用包)
    本课程主要介绍了系统常见包的作用。

03090_包的定义及使用(jar命令)
    本课程主要讲解jar文件的作用、生成方式以及使用。

二十三、访问控制权限
03091_访问控制权限
    本课程主要讲解四种访问控制权限的使用范围,并着重讲解了protected访问权限。

03092_构造方法私有化(单例设计)
    本课程主要讲解了构造方法私有化的主要作用与操作实现。

03093_构造方法私有化(多例设计)
    本课程在单例设计模式的基础上进一步讲解了多例设计模式的使用。

二十四、异常的捕获及处理
03094_异常的捕获及处理(异常的产生)
    本课程主要讲解了异常的产生以及不处理所带来的程序问题。

03095_异常的捕获及处理(处理异常)
    本课程主要讲解异常处理语句:try、catch、finally的作用。

03096_异常的捕获及处理(异常处理流程)
    本课程主要分析了异常处理流程,通过分析讲解了Exception处理异常的原理。

03097_异常的捕获及处理(throws关键字)
    本课程主要讲解了throws关键字的作用。

03098_异常的捕获及处理(throw关键字)
    本课程主要讲解了throw关键字的作用。

03099_异常的捕获及处理(异常处理标准格式)
    本课程主要讲解了异常在实际开发中的标准定义格式,属于重要的代码模型。

03100_异常的捕获及处理(RuntimeException类)
    本课程主要讲解了RuntimeException类的作用以及与Exception的区别。

03101_异常的捕获及处理(断言)
    本课程主要讲解了assert关键字的作用。

03102_异常的捕获及处理(自定义异常)
    本课程主要讲解了自定义异常类的实现。

二十五、类图描述
03103_类图描述(类图)
    本课程主要讲解了如何利用PowerDesigner实现类、接口的图形描述。

03104_类图描述(时序图)
    本课程主要讲解了时序图的作用以及通过工厂设计模式的执行流程,讲解时序图的实际使用。

二十六、Eclipse开发工具
03105_Eclipse基本使用(简介)
    本课程介绍了Eclipse的发展历史,以及相关的开发工具发展历史。

03106_Eclipse基本使用(JDT使用)
    本课程主要讲解了JDT工具的使用,包括创建项目、建立类、调试代码、JAR配置等基本功能使用。

03107_Eclipse基本使用(junit测试工具)
    本课程主要讲解了junit测试工具的使用。

二十七、Java5新特性
03108_可变参数
    本课程主要讲解可变参数的先期实现以及Java 5之后的支持语法及使用。

03109_foreach循环
    本课程主要以数组的方式来分析传统输出方式以及foreach输出的使用。

03110_静态导入
    本课程主要讲解了静态导入类中全部static方法的使用。

二十八、泛型
03111_泛型(问题引出)
    本课程主要分析了Object接收数据以及向下转型所带来的问题,并且讲解了如何利用泛型来解决ClassCastException问题。

03112_泛型(通配符)
    本课程主要在泛型基础上讲解引用传递所带来的新问题,并且讲解了上限与下限制的使用。

03113_泛型(泛型接口)
    本课程主要讲解在接口上定义泛型以及两种子类实现形式。

03114_泛型(泛型方法)
    本课程主要讲解如何在不支持泛型的类上如何定义泛型方法的操作。

二十九、枚举
03115_枚举(枚举简介)
    本课程主要使用多例设计模式分析了枚举的使用,以及Enum类与enum关键字的联系。

03116_枚举(定义其它结构)
    本课程主要讲解如何在枚举中定义构造、属性、普通方法的操作,以及实现接口与定义抽象方法的使用。

03117_枚举(枚举应用)
    本课程主要讲解如何在switch中使用枚举,同时讲解了枚举在代码结构中的作用。

三十、Annotation
03118_Annotation(简介)
    本课程主要介绍了Annotation的产生背景。

03119_Annotation(准确覆写)
    本课程主要讲解了“@Override”注解的使用。

03120_Annotation(过期声明)
    本课程主要讲解了“@Deprecated”注解的使用。

03121_Annotation(压制警告)
    本课程主要讲解了“@SuppressWarnings”注解的使用。

三十一、Java8新特性
03122_接口定义增强
    本课程主要讲解Java8中default方法与static方法的定义。

03123_Lamda表达式
    本课程主要讲解了匿名内部类的定义问题,并且讲解了Lamda表达式的几种使用形式。

03124_方法引用
    本课程主要讲解Java8中四种方法引用的使用方式。

03125_内建函数式接口
    本课程主要讲解java.util.function定义的四个核心函数式接口的使用。

课程目标
  • 掌握面向对象编程
适合人群
  • 学过JAVA入门课程学员