项目七 任务一 类(一)(课件)-《算法与程序设计--C#》(河北科学技术出版社)同步精品课堂

2025-04-01
| 28页
| 267人阅读
| 6人下载
精品

内容正文:

7.1 类(一) --类的声明、类的成员、构造函数 算法与程序设计--C# 同步精品课堂 河北科学技术出版社 教学目标 一 理解 C# 中类的概念,明确类在面向对象编程中的核心地位 掌握构造函数的声明和使用 掌握类的声明方法 教学目标 01 02 03 掌握国家标准《机械制图》中有关图幅、比例、字体图线等基本规定。 教学重难点 二 教学难点 1、类的成员(字段、属性、方法)的定义和使用 2、构造函数的作用、声明和使用 教学重点 1、 类的封装性及其在程序设计中的意义 2、构造函数的重载及其使用场景 教学难点 导入新课 三 讨论: 在日常生活中,以“汽车”为例,汽车的设计图纸是类,具体的某辆汽车是对象。那么用程序语言如何表示什么是类? 任务一 1 类的声明 新知讲授 四 类的概念 类是面向对象编程(OOP)的基本概念之一,它是一种抽象数据类型,类定义了对象的属性(字段)和行为(方法)。 类是同一类事物的统称,如果现实生活中一个事物抽象成对象,那么类就是这些对象的统称。如人类、鸟类等。在OOP中,一切都被视为对象,而这些对象的行为和属性都由类来定义。例如,你可以创建一个名为"Person"的类,用于表示人的属性(如姓名、年龄)和行为(如说话、行走)。 类是面向对象编程的核心:OOP的基本思想是将数据(属性)和方法(行为)封装到对象中,通过类来定义和管理这些对象。 新知讲授 四 ➽ 说明: (1)public 是一个访问修饰符,它表示类是公共的,可以在程序的其他部分访问。 (2)Person 是类的名称,按照约定通常使用帕斯卡命名法(首字母大写)。 (3)大括号 { } 中包含了类的成员,包括字段、属性和方法。 ➽ 语法 [public] class 类名 { 字段; 属性; 方法; } 类的声明 在C#中,声明一个类使用class关键字,后跟类名和类体的大括号。类名通常使用帕斯卡命名法,首字母大写。类体包含类的成员,如字段、属性和方法。 新知讲授 四 类的命名规范和命名约定 (1)类名通常使用帕斯卡命(Pascal)名法:每个单词的首字母大写其他小写,例如 User、GetInfo等。 (2)类名应该具有描述性,以便在不查看类的定义的情况下也可以理解它的用途。避免使用单个字符或不具有描述性的类名,除非有特殊的约定或用途。 (3)如果类是具体的类型(如"Person"或"Car"),类名通常使用名词,反映实际世界中的对象。 (4)遵守语言和团队的编程约定,以确保一致性。 任务二 2 类的成员 新知讲授 四 类的成员 类的成员是类中定义的各种元素,它们用于描述类的结构和行为。类的成员可以包括字段(数据成员)、属性(访问器成员)和方法(行为成员)。这些成员共同定义了类的特征和功能。 (1)字段(Fields):字段用于存储数据,是类的数据成员。它们通常表示对象的特征或状态,如一个Person类的name字段可以用来存储人的姓名。 (2)属性(Properties):属性提供对类的字段的访问和控制,通过属性可以封装字段的访问。属性通常包括get和set访问器,用于获取和设置字段的值。 (3)方法(Methods):方法包含类的行为和操作。它们是用来执行某些操作的代码块,表示类或对象能做什么。 新知讲授 四 ➽示例: class Student { // 字段 private int age; // 属性 public string Name { get; set; } // 方法 public void Study() { Console.WriteLine($"{Name} is studying.");}} 任务三 3 构造函数 新知讲授 四 构造函数的概念 构造函数是一种特殊的方法,它用于在对象被new创建时进行初始化。当你创建一个类的实例(对象)时,构造函数会自动调用执行初始化操作。 没有编写情况下,C#会自动生成。 ➽构造方法编写规范: (1)构造函数的名称与类名相同,大小写一致。 (2)构造函数没有返回类型,包括void。即内部不得写return (3)构造函数可以包含参数,用于接受初始化时需要的信息。 新知讲授 四 构造函数的声明 ➽语法 public class MyClass{ public MyClass()//默认构造函数 { //构造函数的初始化代码 } } ➽说明 (1)构造函数的名称与类名相同; (2)构造函数没有返回类型,包括void; (3)构造函数可以包含参数,用于接受初始化时需要的信息; 新知讲授 四 ➽示例 Class Student{ public string name; public string age; public Student(){ Console.WriteLine(“Student的构造方法”); } } 主方法 Student s1= new Student(); 新知讲授 四 带参数的构造函数 ➽示例 Class Student{ public string name=“”; public string age=0; public Student(string name , int age){ this.name=name; //当前创建对象的name与传入的name的值一样; this.age=age; } } 主方法 Student s1= new Student(“小明”,20); 新知讲授 四 ➽任务:分析下列程序中构造函数的调用。 static void Main() { Student student1 = new Student(); // 使用无参构造函数创建对象 Console.WriteLine($"姓名: {student1.Name}, 年龄: {student1.Age}"); // 使用有参构造函数创建对象 Student student2 = new Student("张三", 20); Console.WriteLine("姓名: {0}, 年龄: {1}",student2.Name,student2.Age); student2.Study(); } 新知讲授 四 构造函数的重载 构造函数可以重载,这意味着可以为一个类定义多个不同参数列表的构造函数。构造函数重载可以根据不同情况和需求来初始化对象。 ➽示例1 Class Student{ public string name=“”; public string age=0; public Student() {Console.WriteLine(“Student的无参构造方法”);} public Student(string name , int age) { Console.WriteLine(“Student的有参构造方法”); this.name=name; this.age=age; } } 新知讲授 四 ➽示例2 Class Student{ public string name=“”; public string age=0; public Student() { Console.WriteLine(“Student的无参构造方法”);} public Student(string name) {Console.WriteLine(“Student的带一个参构造方法”); this.name=name; } public Student(string name , int age){ Console.WriteLine(“Student的有参构造方法”); this.name=name; this.age=age; } } 主方法 Student s1= new Student(“小明”,20); Student s2= new Student(); Student s3= new Student(“小智”); 新知讲授 四 构造函数小结 构造方法创建 ▪ 如果没有定义构造方法,系统会自动生成一个无参构造方法 ▪ 如果定义了构造方法,系统不再给出默认构造方法 构造方法重载 ▪构造方法也满足方法的重载规则 构造方法工程规则 ▪ 类的无参/带参构造方法都要手动给出;(无参与全参) 师生互动 五 1、总结类的声明的语法; 2、总结无参构造函数与有参构造函数的区别; 讨论 随堂练习 六 1、在C#中,使用______关键字来声明类。 答案:class 解析:声明类用class关键字 2、类的构造函数在创建类的______时自动调用。 答案:实例 解析:创建对象实例时可以自动调用构造函数。 随堂练习 六 3、以下符合 C# 命名规则的类名是( ) A. 123Class B. classExample C. ExampleClass D. Example-Class 答案:C 解析:在 C# 中,类名必须是合法的标识符,不能以数字开头,不能包含特殊字符(如-)。类名通常遵循帕斯卡命名法,即每个单词的首字母大写,所以ExampleClass是符合规则的。 随堂练习 六 4、 类的成员不包括以下 ( ) A. 字段 B. 命名空间 C. 属性 D. 方法 答案:B 解析:类的成员包括字段、属性、方法等。 随堂练习 六 5、关于构造函数的重载,以下说法错误的是( ) A. 构造函数可以通过不同的参数类型重载 B. 构造函数可以通过不同的参数数量重载 C. 构造函数可以通过不同的返回值类型重载 D. 构造函数可以通过参数的默认值重载 答案:C 解析:构造函数没有返回值,不能通过返回值类型区分。构造函数可以通过参数类型、数量或顺序重载,但不能通过参数的默认值重载。 随堂练习 六 6、类的成员可以是私有的、受保护的、内部的或公共的。( ) 7、构造函数重载只要求参数个数不同。( ) 答案:6、正确。7、错误。 解析:6、类的成员可以使用访问修饰符private、protected、internal、public来定义访问权限。 7、构造函数重载要求参数列表不同,参数列表不同包括参数个数不同、参数类型不同或参数顺序不同。 课堂小结 七 谢谢 $$

资源预览图

项目七  任务一  类(一)(课件)-《算法与程序设计--C#》(河北科学技术出版社)同步精品课堂
1
项目七  任务一  类(一)(课件)-《算法与程序设计--C#》(河北科学技术出版社)同步精品课堂
2
项目七  任务一  类(一)(课件)-《算法与程序设计--C#》(河北科学技术出版社)同步精品课堂
3
项目七  任务一  类(一)(课件)-《算法与程序设计--C#》(河北科学技术出版社)同步精品课堂
4
项目七  任务一  类(一)(课件)-《算法与程序设计--C#》(河北科学技术出版社)同步精品课堂
5
项目七  任务一  类(一)(课件)-《算法与程序设计--C#》(河北科学技术出版社)同步精品课堂
6
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。