作者:高世栋 学号:202302151071
一、第一章:初识Java与面向对象程序设计
-
Java简介:Java是一种面向对象的程序设计语言,具有跨平台、安全性高、可移植性强等特点。
-
面向对象程序设计概述:面向对象是一种程序设计思想,将现实世界的事物抽象为对象,通过对象之间的交互来完成程序的功能。
-
Java开发环境搭建:介绍了Java开发环境的搭建过程,包括JDK的安装、环境变量的配置以及Eclipse、IntelliJ IDEA等开发工具的使用。
-
第一个Java程序:通过编写一个简单的Java程序,了解了Java程序的基本结构及运行过程。
例如:
1、完成JDK的安装及配置。
2、完成Intellij IDEA的安装。
3、编写一个程序,输出自己的名字。提交运行截图。
个人感受:本章是Java的入门章节,首先对计算机编程语言的发展史进行介绍,引出本书的主角:Java语言。通过Java与其它语言的对比,凸显Java简单、易学的特点。接着介绍了面向过程与面向对象设计思想的特点与区别,从而引出面向对象程序设计的优势。安装完JDK之后,进入第一个人门程序HelloWorld的编写环节,并通过注释提高代码的可读性,通过这个简单的程序,引出了编写代码时的规范和细节。接着还介绍了目前市面上较流行的两款集成开发工具Eclipse和IDEA,使读者正式步入Java学习的大门。最后,指出本章中的一些知识点可融入的思政元素。
二、第二章:Java编程基础
-
数据类型:介绍了Java中的基本数据类型(整型、浮点型、字符型、布尔型)和引用数据类型(类、接口、数组)。
-
变量与常量:讲解了变量的声明、初始化及作用域,以及常量的定义和使用。
-
运算符:介绍了算术运算符、关系运算符、逻辑运算符、赋值运算符等,并讲解了运算符的优先级和结合性。
-
流程控制:包括顺序结构、分支结构(if、switch)、循环结构(for、while、do-while)等,以及break和continue语句的使用。
-
方法:讲解了方法的定义、调用、参数传递及返回值,并介绍了方法的重载。
例如:
编写一个Java程序,用户输入矩形的长和宽,并通过传递标志参数 (flag) 来决定是计算矩形的周长还是面积:
-
定义一个方法 calculateRectangle,根据 flag 参数决定返回周长或面积:
-
如果 flag = 1,计算并返回矩形的周长;如果 flag = 2,计算并返回矩形的面积;
-
其他值提示输入无效。
-
使用 Scanner 类实现输入功能,提示用户输入矩形的长、宽和操作标志。
-
程序输出对应的结果。
个人感受:本章的开发思想主要为结构化程序设计思想,通过本章的学习,读者能够掌握Java的基本语法、三大基本结构、方法和数组,以及基本的面向过程开发思想,对于一些简单的实戈,要能够分析出其大概逻辑,并使用代码进行实现。
三、第三章:面向对象程序设计(基础)
-
类与对象:介绍了类和对象的概念,以及如何创建和使用对象。
-
构造方法:讲解了构造方法的定义和作用,以及默认构造方法和带参数的构造方法。
-
成员变量与局部变量:区分了成员变量和局部变量,并讲解了它们的访问权限。
4.关键字:this关键字(成员变量需要加上this关键字)、static关键字
5.包:Java通过package关键字声明一个包,之后根据功能模块将对应的类放到对应的包中。
个人感受:本章为面向对象编程的基础阶段,对于初次接触面向对象的读者而言存在一些难度。面向对象开发相较于面向过程开发是一种思想上的转变,当熟悉了这种思想后,便不再有难度。本章首先介绍了类和对象的概念,分别介绍了类的定义方式和对象的创建与使用,以步入面向对象编程的大门。接着,通过分析对象的内存,使读者理解基本类型和引用类型在JVM中存储方式上的差别。然后介绍了构造方法,使用户能够更加灵活地创建对象,并对对象中的成员变量进行更便捷的初始化,而当成员变量和局部变量存在重名时,成员变量需要加上this关键字,这一点需要注意。再者,介绍了static关键字的使用,分别演示了静态变量、静态方法、静态代码块与非静态变量、方法、代码块的区别。还概述了关键字package的思想以及介绍了package的使用。最后,指出了本章中的一些知识点可融入的思政元素。通过本章的学习,读者能够掌握面向对象程序设计的基本思想,并且能够运用面向对象程序设计的思想解决一些实际问题。
四、第四章:面向对象程序设计(进阶)
-
封装:介绍了封装的概念和作用,以及如何通过访问修饰符实现封装。
-
继承:讲解了继承的基本概念、语法及特点,并介绍了子类与父类之间的方法重写。
-
多态:介绍了多态的概念、实现方式(方法重写和方法重载)及优点。
-
抽象类与接口:讲解了抽象类和接口的定义、特点及使用场景。
-
包:介绍了包的概念、作用及创建方法,以及import语句的使用。
-
内部类:讲解了内部类的分类(成员内部类、局部内部类、匿名内部类、静态内部类)及作用。
个人感受:用大量篇幅介绍。熟悉面向对象的基础之态为核心,介绍了很多知识点,这些知识点的使用,从而将变量进行了封装,使外界无访问方法,从而保障了变量的安全性。接,为后面的多态打下了基础。在继承中,变本章是Java面向对象程序设计的重点,因此,学习本章的高级特性并不会太吃力。本章以面向对象的三大特性:封装、继承、多是为这三大特性服务的。首先,介绍了访问修饰符和get ( )、set ( )方法直接访问变量,取而代之的则是提供了公共的,介绍了继承,使类与类之间存在了一定的联系,为后面的多态打下基础
五、第五章:异常
- 异常概述:介绍了异常的概念、分类(编译时异常和运行时异常)及处理方式。
2.异常处理:Java中的异常本质上也是类,抛出异常时,实际上是抛出一个异常的对象。
个人感想:本章主要介绍了异常的使用。首先对异常的概念和体系进行了介绍,通过继承关系讲述了异常的分类,以及异常与错误的区别。然后介绍了异常的抛出、声明、捕获,要求开发者对能够预知到的异常必须进行处理。接着介绍了自定义异常,开发者可以尽可能地根据业务场景定义出对应的异常,从而便于在生产环境中排查错误。最后指出了本章中的一些知识点可融入的思政元素。
六、第六章:Java常用类
-
String类:介绍了String类的常用方法,如length()、charAt()、concat()、equals()等。
-
StringBuffer和StringBuilder类:讲解了StringBuffer和StringBuilder类的特点及使用场景。
-
数组类(Arrays):介绍了Arrays类的常用方法,如sort()、binarySearch()、equals()等。
-
日期时间类:讲解了Date、SimpleDateFormat、Calendar等日期时间类的使用。
-
数学类(Math):介绍了Math类的常用方法,如random()、sqrt()、pow()等。
例如:
编写一个Java程序,实现以下功能:
-
输入:用户输入一段字符串,程序对该字符串进行处理,并根据用户选择,执行不同的操作。
-
功能:
2.1 使用 StringBuffer 或 StringBuilder 反转输入的字符串。2.2 使用 Random 生成一个随机数,并使用 Math 类对该数执行常见的数学操作(如取绝对值、平方根等)。2.3 获取当前日期并使用 SimpleDateFormat 格式化输出日期和时间。2.4 生成一个唯一的 UUID 并输出。2.5 使用 Integer 包装类将一个字符串转换为整数。
-
输出:输出每个功能的执行结果。
个人感想:本章主要介绍Java开发中常见的一些类的使用,包括包装类、字符串、时间日期、工具类等都是在开发中经常用到的类。本章首先介绍了包装类的用处,以及包装类与基本数据类型之间的转换,进而引出自动拆箱、装箱机制:接着介绍了3种字符串:String、StringBuffer .StringBuilder的使用方式,以及它们之间的区别,并通过一个程序演示了三者之间的性能提耗,读者需要能够根据不同的场景选择不同的字符串类;之后介绍了日期相关类及其用法,包括如何获取日期、格式化日期、对日期进行计算等;最后指出了本章中的一些知识点可融入的思政元素。本章整体来说难度偏低,所有内容都只是介绍某个类有哪些常用的方法,以及这些方法的使用方式,没涉及原理以及细节,因此学习成本较低,但依然需要读者花时间对这些知识进行巩固。
通过本次综合复习,我们对Java程序设计的基本知识有了更加系统的了解。接下来,我们将继续深入学习,不断提高编程能力,为实际项目开发奠定坚实基础。