任务5 学生基本信息管理模块实现教学课件 Java程序设计项目化教程.pptx
《任务5 学生基本信息管理模块实现教学课件 Java程序设计项目化教程.pptx》由会员分享,可在线阅读,更多相关《任务5 学生基本信息管理模块实现教学课件 Java程序设计项目化教程.pptx(111页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、任务5学生基本信息管理模块实现教学课件Java程序设计项目化教程J J 程程 序序 设设 计计任务5:学生基本信息管理模块实现1 任务描述 目录2 技术准备3 任务实施Java程序设计1、任务描述本任务采用面向对象程序编程方法来实现学生基本信息管理子模块的主要功能:学生信息的添加、删除、修改和显示。完成本任务需要了解和掌握面向对象程序设计方法,掌握Java中类与对象的使用。2.1 类与对象 技术准备2.2 类的组织 2.3 访问权限2.4 封装2.5 继承2.6 多态2.7 内部类2.8 Lambda表达式Java程序设计2.1 类与对象面向对象程序设计思想是一种更加符合人类思维习惯的编程思想
2、,主要是针对大型软件设计而提出的,使得软件设计更加灵活,能够很好地支持代码复用和设计复用,使代码具有更好的可读性和可扩展性,大幅度降低了软件开发的难度。Java完全采用了面向对象的程序设计思想,是真正面向对象的高级编程语言,支持封装、继承、多态等面向对象的基本功能。Java程序设计2.1 类与对象面向对象程序设计中,程序的基本单元是类。类是对具有相同属性和行为的一组实例对象的抽象,一个类包含数据(描述类的属性)和方法(对数据的操作)两部分。例如,每个学生都有学号、姓名、成绩等属性,都有对这些属性的操作(例如设置学生信息、读取学生信息等)。因此,可以将描述学生属性的数据(学号、姓名、成绩)和对数
3、据进行操作的方法(设置学生信息、读取学生信息)封装在一起,形成一个学生类,每个学生都是学生类的一个具体实例对象。类与对象的关系就如数据类型和数据之间的关系:类是对象的抽象;而对象则是类的具体实例。类中用于描述对象属性的数据称为成员变量,描述对象行为的操作称为成员方法,成员变量和成员方法统称为类的成员。Java程序设计2.1 类与对象1.类的定义类的定义修饰符修饰符 class 类名类名类成员定义类成员定义;说明:(1)类修饰符可以省略,也可以使用public、final、abstract,final与abstract不能同时出现。可简记成:publicfinal|abstract。(2)类名为
4、自定义的类的名字,须遵循标识符命名规则。通常情况下建议类名首字母大写。(3)类的成员包括成员变量和成员方法,不论是哪种成员,可以是0个或多个,根据需要来定义。Java程序设计2.1 类与对象(4)成员变量定义格式如下:修饰符修饰符 数据类型数据类型 变量名变量名 =值值;成员变量修饰符可以省略,也可以是public、private、protected、final、static。其中public、private、protected三个最多只能出现其中之一,可以与final、static组合起来修饰成员变量。简记成:public|private|protectedfinalstatic。Java程
5、序设计2.1 类与对象(5)成员方法定义格式如下:修饰符修饰符 返回值类型返回值类型 方法名方法名(形参表形参表)方法体;方法体;成员方法修饰符可以省略,也可以是public、private、protected、final、abstract、static,其中public、private、protected三个最多只能出现其中之一;abstract与final两者最多只能出现其一,它们可与static组合起来修饰方法。成员方法修饰符可简记成:public|private|protectedfinal|abstractstatic。Java程序设计2.1 类与对象【例 51】定义一个学生类成成员
6、变量量成成员方法方法Java程序设计2.1 类与对象2.对象的创建对象的创建类定义好后,就可以通过该类来实例化一个对象。格式:类名类名 对象名对象名 =new 类名类名();例创建一个学生类对象:Student stu=new Student();上述代码首先声明了一个对象变量,然后为其分配存储空间。这两步通常合并在一起写,也可分开写成如下形式:Student stu;stu=new Student();与数组类似,类也是一种引用数据类型,因此上述代码中的stu也是一个引用类型变量,stu本身存放在栈内存中,而stu指向的真正的对象则是存储在堆内存中。Java程序设计2.1 类与对象3.对象的
7、使用对象的使用对象创建完毕,就可以使用该对象。通过成员运算符“.”来访问对象的成员变量或调用成员方法。格式:对象名对象名.成员变量名成员变量名对象名对象名.成员方法名成员方法名(实参表实参表)Java程序设计2.1 类与对象【例 52】对象的使用示例(类与测试类在不同文件中)。Java程序设计2.1 类与对象【例 52】对象的使用示例(类与测试类在同一文件中)。Java程序设计2.1 类与对象【例 52】对象的使用示例(直接在类中添加一个main()方法测试类的使用)。Java程序设计2.1 类与对象4.构造方法构造方法构造方法(也叫构造器)是类的一个特殊方法,在实例化对象时由系统自动调用,如
8、果没有显示定义该方法,系统会调用缺省构造方法。该方法通常用于初始化对象,如为成员变量设置初始值或进行其他必要的初始化工作。构造方法定义格式:修饰符修饰符 方法名方法名 (形参表形参表)方法体;方法体;Java程序设计2.1 类与对象说明:(1)构造方法的方法名必须与类名相同。(2)方法名前面没有返回值类型的声明。(3)方法体中不能使用return语句返回值。(4)构造方法的修饰符通常采用public或省略。(5)一个类中如果没有显式地定义构造方法,系统会自动提供一个默认的无参构造方法。(6)一旦为类定义了构造方法,系统将不再提供默认的无参构造方法。Java程序设计2.1 类与对象【例 53】构
9、造方法应用示例Java程序设计2.1 类与对象构造方法重载构造方法重载构造方法与成员方法一样,都支持方法重载。在一个类中可以定义多个构造方法,只要每个构造方法的参数类型或参数个数不同即可。Java程序设计2.1 类与对象【例 54】构造方法的重载Java程序设计2.1 类与对象5.this关键字关键字Java中提供了一个关键字this来指代当前对象,用于在方法中访问对象的成员。this关键字的常见用法有2种。一是通过this调用构造方法,二是通过this调用成员变量。用法用法1:通过:通过this调用构造方法。调用构造方法。此种方式主要用于实现代码的复用。当类的一个构造方法中的一段代码与另一个
10、构造方法中的代码完全相同时,就没必要再重复编写,可通过关键字this来直接调用该构造方法,其使用格式:this(实参表实参表)Java程序设计2.1 类与对象用法用法2:通过:通过this调用成员变量。调用成员变量。此种方式主要用于解决成员变量名与局部变量名相冲突问题。成员变量是定义在类中的变量,局部变量指的是定义在方法中的变量。在一个方法中允许局部变量与成员变量同名,但此时在方法中直接通过变量名访问到的将是局部变量而非成员变量。这时就可通过在变量名前加this关键字来指明访问成员变量。此种应用场景也多出现在构造方法中。构造方法通常用于为成员变量赋值,其形参名通常都采用与成员变量相同的名字,以
11、减少变量命名。Java程序设计2.1 类与对象【例 55】this关键字使用示例(1)使用this调用构造方法的语句必须是该方法的第一条执行语句。(2)只能在构造方法中使用this关键字调用该类的其他构造方法,不能在成员方法中使用。Java程序设计2.1 类与对象6.static关键字关键字Java中的static关键字可以用来修饰成员变量或成员方法。用static修饰的成员变量为类变量(也有的称为静态变量),没有用static修饰的成员变量为实例变量;用static修饰的成员方法为类方法(或称为静态方法),没有用static修饰的成员方法为实例方法。类变量和类方法是属于类本身的成员变量和成员
12、方法,由该类的所有实例对象共享。无论通过何种方法修改了类变量,该类的所有对象都会受到影响。Java程序设计2.1 类与对象实例变量和实例方法是属于每个具体实例对象的成员变量和成员方法,不同实例对象之间,实例成员相互独立。任何对象改变了自身的成员变量或调用其成员方法时,其他对象不受影响。类变量和类方法既可以通过对象名访问或调用,也可以在不实例化对象的情况下直接通过类名进行访问或调用。实例变量和实例方法只能通过对象名来访问或调用。实例方法中既可以访问实例变量,也可以访问类变量。类方法中则只能访问类变量,而不能访问实例变量。Java程序设计2.1 类与对象【例 56】static关键字使用示例。Ja
13、va程序设计2.2 类的组织项目开发中,一个项目可能会包含若干个类,为了方便对类进行组织和管理,Java中引入了包机制,它提供了相应的访问控制权限和命名管理机制。包实际上就是一个目录,一个包对应着一个目录。包名就是目录名。目录可以有多级,即一个目录下面还可以有若干子目录,同样包也可以有多级,一个包下面还可以有子包。目录与子目录之间通常用“”分隔,形如“cnjnvc”;而包与子包之间则以“.”分隔,形如“cn.jnvc”。Java程序设计2.2 类的组织1.包的创建包的创建包的创建通过package语句实现,格式:package 包名包名说明:(1)包名须满足标识符命名规则,通常情况下包名全部采
14、用小写字母。(2)在不考虑注释和空行的情况下,package语句应位于源文件中的第一行。(3)一个源文件中只能出现一次package语句。Java程序设计2.2 类的组织2.包的导入包的导入同一包中的类可以直接通过类名使用,不同包中的类不能直接通过类名使用。当一个包中的类要使用另一个包中的类时,通常有2种方法:一是使用完整类名引用包中的类,即在类名前面加上完整的包名,形如“cn.jnvc.Student”,二是使用import语句导入包中的类。当使用了import把其他包中的类导入进来后,就可直接通过类名来使用该类。Java程序设计2.2 类的组织import语句使用格式:import 包名包
15、名.类名类名说明:(1)import语句通常出现在package语句之后、类定义之前。(2)import语句可根据需要出现多次。(3)可使用“import包名.*”来导入包中所有的类。Java程序设计2.2 类的组织3.Java中常用包中常用包在JDK中,不同功能的类都放在不同的包中,其中Java的核心类主要放在java包及其子包下,Java扩展的大部分类都放在javax包及其子包下。下面列举了Java中常用的一些包。(1)java.lang:java语言的核心类,如String、Math、System等,使用这个包下的类无须导入,系统会自动导入该包下所有的类。(2)java.util:jav
16、a的一些工具类和集合类,如Arrrays、List、Set等。(3):网络编程相关的类和接口。(4)java.io:输入输出编程相关的类和接口。(5)java.text:格式化相关的类。(6)java.sql:JDBC编程的相关类和接口。Java程序设计2.3 访问权限在Java中,针对类、成员方法和成员变量提供了4种不同级别的访问控制权限,访问级别由小到大分别是private、default、protected和public。(1)private(私有的):如果类的成员被private访问控制符来修饰,则这个成员只能被其定义所在的类访问,其他类无法直接访问。(2)default(默认):如果
17、一个类或者类的成员不使用任何访问控制符修饰,则称它为默认访问控制级别,这个类或者类的成员只能被本包中的其他类访问。(3)protected(受保护的):如果一个类的成员被protected访问控制符修饰,那么这个成员既能被同一包下的其他类访问,也能被不同包下该类的子类访问。(4)public(公共的):这是一个最宽松的访问控制级别,如果一个类或者类的成员被public访问控制符修饰,那么这个类或者类的成员能被所有的类访问,不管访问类与被访问类是否在同一个包中。Java程序设计2.3 访问权限访问控制级别:访问范范围privatedefaultprotectedpublic同一类中同一包中子类中
18、全局范围Java程序设计2.4 封装封装是面向对象的三大特性之一。类由成员变量和成员方法构成,这些成员封装在一个单个实体中,即类的封装。“强内聚,弱耦合”,要求一个类的内部成员联系尽量紧密一些,而一个类与其他类之间联系尽量松散一些,以增强程序的健壮性、稳定性。要实现这种“强内聚,弱耦合”,就是尽可能地把类的成员声明为私有的,只把一些少量、必要的方法声明为公有的提供给外部使用。通常情况下不允许外界直接访问对象的成员变量,因此一个封装良好的类中成员变量都应声明为私有的,然后为这些私有成员变量提供相应的getXX()和setXX()方法,这些方法应用public修饰,这样外界就可通过这些公共方法来获
19、取或设置私有成员变量值。Java程序设计2.4 封装【例 57】类的封装示例Java程序设计2.5 继承继承实际上是面向对象程序设计中两个类之间的一种关系。当一个类A能够获取另一个类B中所有非私有成员作为自己的部分或全部成员时,就称这两个类之间有继承关系。继承是为代码复用和设计复用而设计的,是面向对象程序设计的重要特性之一。这种利用现有类派生出新类的过程就称为继承。新类既拥有原有类的特性,又增加了自身新的特性。设计一个新类时,如果可以继承一个已有的设计良好的类然后进行二次开发,无疑会大幅度减少开发工作量。在继承关系中,已有的、设计好的类称为父类或基类,新设计的类称为子类或派生类。继承分为单继承
20、和多继承,单继承是指任何一个子类只能有一个父类,而多继承是指一个子类可以有若干个父类。Java只支持单继承,不支持多继承。Java程序设计2.5 继承1.继承定义格式继承定义格式继承的实现是在定义子类时在子类名后面加上关键字extends,extends后面跟上要继承的父类名。具体使用格式:修饰符修饰符 class 子类名子类名 extends 父类名父类名类成员定义类成员定义;说明:(1)父类须是一个已经定义好的类。(2)子类只能继承父类中的非私有成员。Java程序设计2.5 继承【例 58】继承使用示例Java程序设计2.5 继承2.重写父类方法重写父类方法子类对继承自父类的方法如果不能完
21、全满足自己的需求,也可以根据需要进行修改,即子类对父类的方法重新改写,简称方法重写。Java程序设计2.5 继承【例 59】方法重写使用示例子类重写的方法需要和父类被重写的方子类重写的方法需要和父类被重写的方法具有相同的方法名、参数及返回值类法具有相同的方法名、参数及返回值类型,而且不能使用比父类中被重写的方型,而且不能使用比父类中被重写的方法更严格的访问权限。法更严格的访问权限。Java程序设计2.5 继承3.super关键字关键字在例 5-9中子类Student重写父类方法info()时,只是在原有父类方法的基础上又添加了新代码,显然没必要再把父类中已有的代码重复书写,这时就可利用关键字s
22、uper来调用父类方法,从而实现代码的复用。在继承时,构造方法也可以被重写,同样如果子类中要用到父类中构造方法,也可以通过super来调用。使用格式:super.成员方法成员方法(实参表实参表);/super调用父类成员方法调用父类成员方法super(实参表实参表);/super调用父类构造方法调用父类构造方法Java程序设计2.5 继承【例 510】super关键字使用示例。通过通过super调用父类调用父类构造方法的代码必须要构造方法的代码必须要位于子类构造方法的第位于子类构造方法的第一行。一行。Java程序设计2.5 继承Java程序设计2.5 继承super访问父类成员变量访问父类成员
23、变量super关键字除了可以调用父类方法外,还可以通过它访问被隐藏的父类成员变量。在继承中,子类可以定义和父类中相同的成员变量名,此时父类同名成员变量会被隐藏,即在子类中访问该成员变量时访问到的是子类中的成员变量,而不是父类中的成员变量,如果想访问父类中的成员变量,就可通过super来访问。格式:super.成员变量名成员变量名Java程序设计2.5 继承【例 511】利用super访问父类成员变量Java程序设计2.5 继承4.Object类类在Java中提供了一个Object类,它是所有类的父类,即每个类都直接或间接继承自该类。Object类通常被称之为超类、基类或根类。当定义一个类时,如
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 任务5 学生基本信息管理模块实现教学课件 Java程序设计项目化教程 任务 学生 基本信息 管理 模块 实现 教学 课件 Java 程序设计 项目 教程
限制150内