第4章 面向对象编程方法 王德俊 上海交通大学继续教育学院.

Slides:



Advertisements
Similar presentations
主要内容 Java 的常用包 Java 的常用包 “ == ” 和 “ equals ” 的用法 “ == ” 和 “ equals ” 的用法 基本数据类型与引用类型 基本数据类型与引用类型 String 和 StringBuffer String 和 StringBuffer 对象的克隆( clone.
Advertisements

软件编程基础 一、程序的编辑 Java 源程序是以 Java 为后缀的简单的文本文件,可以用各种 Java 集成开发环境中的源代码编辑器来编写,也可以用其他文 本编辑工具,如 Windows 中的记事本或 DOS 中的 EDIT 软件等。 利用文字编辑器编写下列程序 public class Hello.
第3-2章 类与 对象 Java类的特性 教学内容: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员 重点: 重载 难点:
单元二:面向对象程序设计 任务二:借书卡程序设计.
3.2 Java的类 Java 类库的概念 语言规则——程序的书写规范 Java语言 类库——已有的有特定功能的Java程序模块
JAVA 编 程 技 术 主编 贾振华 2010年1月.
项目6 通用堆栈.
四資二甲 第三週作業 物件導向程式設計.
C#程序设计案例教程 第3章 程 序 结 构.
面向对象的程序设计(一).
南京理工大学 第2章 Java基本语法 本章我们将学习Java编程语言的基本语法,包括变量、操作符、表达式、语句、字符串、数组、控制流以及如何使用帮助文档。 使用下面的编程框架: public class Test{ public static void main(String []args){ //以下添加测试代码.
第二章 JAVA语言基础.
第7单元 面向过程编程—— 继承与多态.
第10讲 Java面向对象编程基础(4) 教学目标 主要内容.
Chapter2 Constants, Variables, and Data Types
第九章 字符串.
第5章 异常处理 王德俊 上海交通大学继续教育学院.
.NET 程式設計入門(使用 C#) 講師:鄧智鴻.
第二章 C# 基础知识.
第四章 在 C# 中实现 OOP 概念.
第三章 C#面向对象初级编程 面向对象得程序设计越来越受到编程人员的喜爱。类和对象是面向对象程序设计中的重要概念。封装性、继承性和多态性是面向对象的特点,本章旨在全面说明C#编写面向对象程序设计的方法。
程式設計實作.
C++语言程序设计 C++语言程序设计 第四章 数组及自定义数据类型 C++语言程序设计.
辅导课程六.
3.1 数据类型 3.2 标识符与关键字 3.3 常量 3.4 变量 3.5 运算符与表达式 3.6 一个编程实例
第9讲 Java的继承与多态(一) 类的继承 子类的创建 方法覆盖.
鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所
Ch02-基礎語法.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C#程序设计基础 第二章 数据类型.
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
第六章 属性、索引器、委托和事件.
* 單元:電腦與問題解決 主題:Java物件導向程式設計-類別與物件 台南縣國立善化高中 蕭嘉民 老師
第三章 C# 基础知识.
辅导课程八.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
實作輔導 2 日期: 3/24(星期六) 09:10~16:00 地點:臺北市立大學 臺北市中正區愛國西路一號 (中正紀念堂站7號出口)
第二章 Java基本语法 讲师:复凡.
$9 泛型基础.
JAVA 程式設計 資訊管理系 - 網路組.
Java變數 2014/6/24.
C#面向对象程序设计 $6 深入理解类.
C#程序设计基础 $3 成员、变量和常量.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
第八讲 面向对象程序设计(一) 精品教程《C#程序设计与应用(第2版)清华大学出版社 谭恒松 主编
<编程达人入门课程> 本节内容 内存的使用 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群: ,
<编程达人入门课程> 本节内容 为什么要使用变量? 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ:
第二章 Java语法基础.
第九节 赋值运算符和赋值表达式.
第二章 类型、对象、运算符和表达式.
Review 1~3.
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所
辅导课程十五.
第二章 Java基本语法 讲师:复凡.
本节内容 指针类型.
第二章 Java基本语法 讲师:复凡.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
基本知识 数据类型、变量、常量、运算符.
PPT注意事项: 当前PPT课件文件必须和提供的源代码文件夹“代码”在同一目录中即不要移动文件夹“代码”的默认位置。
第2章 Java语言基础.
C++语言程序设计 C++语言程序设计 第十章 多态 第十一组 C++语言程序设计.
基本資料型態 變數與常數 運算子 基本的資料處理 授課:ANT 日期:2014/03/03.
判斷(選擇性敘述) if if else else if 條件運算子.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
本节内容 指针类型 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
輸出執行結果到螢幕上 如果要將執行結果的文字和數值都「輸出」到電腦螢幕時,程式要怎麼寫? class 類別名稱 {
第二章 Java基本语法 讲师:复凡.
第二章 简单数据类型 §2.1 数据类型概述 §2.2 变量和常量 §2.3 简单数据类型 §2.4 简单数据类型的相互转换
Presentation transcript:

第4章 面向对象编程方法 王德俊 上海交通大学继续教育学院

第4章 面向对象编程方法 4.1一个简单的程序 4.2 类和对象 4.3 类的继承、重载与多态 4.4 运算符的重载 4.5 接口及其实现 4.6 方法的委托 4.7 常用的几个类 4.8 命名空间

类可以具有静态成员 静态成员与非静态成员的主要差别 声明静态成员需要使用static修饰符 4.2 类和对象 4.2.5 类的静态成员 例如静态字段、静态方法等 静态成员与非静态成员的主要差别 静态成员属于类,而非静态成员则总是与特定的实例(对象)相联 系 声明静态成员需要使用static修饰符

1 静态数据成员 2 静态方法 3 C#中的常用类型转换静态方法 4.2 类和对象 4.2.5 类的静态成员 1 静态数据成员 2 静态方法 3 C#中的常用类型转换静态方法

1 静态数据成员 非静态的字段(数据)总是属于某个特定的对象,其值总是 表示某个对象的值 有时可能需要类中有一个数据成员来表示全体对象的共同特 征,这时就需要使用静态数据成员

静态数据成员 例如,在Student类中用一个数据成员studentNumber来统计学生的人数,那么这个数据成员表示的就不是某个学生对象的特征,而是全体学生对象的特征 class Student // 类名为Student { // 声明静态数据成员存放学生人数 public static int studentNumber; public string id; public string name; public char sex; public int age; }

静态数据成员 静态数据成员不属于任何一个特定的对象,而是属于类,或 者说属于全体对象,是被全体对象共享的数据

2 静态方法 如果某个方法使用时并不需要与具体的对象相联系,这时可 以将该方法声明为静态方法 静态方法同样使用修饰符static声明 静态方法属于类,只能使用类调用,不能使用对象调用

[例StudentStatic] 创建一个控制台应用程序 在该程序中定义一个学生类 该类除包含非静态成员外,还包含一个静态数据成员用以统计学生人 数(对象个数),以及一个静态方法用以返回学生人数

class Student // 类名为Student { // 声明字段 public static int studentNumber; // 声明静态数据成员 public string id; public string name; public char sex; public int age; public Student(string id,string name,char sex,int age) // 声明构造函数 { studentNumber++; //每创建一个对象,静态数据成员增1 this.id=id; this.name=name; this.sex=sex; this.age=age; } public static int GetNumber() // 声明静态方法 { return studentNumber;

static void Main(string[] args) { // 声明对象s1 Student s1=new Student("2005001","张三",'女',21); Console.WriteLine("学号:"+s1.id+",姓名:"+s1.name+",性别:"+s1.sex+",年龄:"+s1.age); // 声明对象s2 Student s2=new Student("2005002","李四",'男',20); Console.WriteLine("学号:"+s2.id+",姓名:"+s2.name+",性别:"+s2.sex+",年龄:"+s2.age); // 声明对象s3 Student s3=new Student("2005003","王五",'男',19); Console.WriteLine("学号:"+s3.id+",姓名:"+s3.name+",性别:"+s3.sex+",年龄:"+s3.age); Console.WriteLine("学生人数为:{0}", Student.GetNumber()); // 调用静态方法 Console.ReadLine(); }

以上程序在构造函数被调用时,使静态数据成员 studentNumber自动增1,从而起到自动统计学生人数的作用 静态方法与非静态方法一样可以重载

3 C#中的常用类型转换静态方法 在C#的System命名空间中,有一个Convert(转换)类,该类 提供了由字符串类型转换为相应其他基本数据类型的一系列 静态方法 注意:字符串的字符序列必须符合相应数据类型的格式要求 类型转换方法最常用的调用格式之一是: Convert.静态方法名(字符串类型数据)

C#中的常用类型转换静态方法 (1) Convert.ToInt32方法 (2) Convert.ToSingle方法 (3) Convert.ToChar方法 (4) Convert.ToBoolean方法

(1) Convert.ToInt32方法 将字符串类型转换为int类型 int a=Convert.ToInt32(“123”); // 符合要求 int b=Convert.ToInt32(“123.6”);// 不符合要求,含有小数点,将引发转换异常 int c=Convert.ToInt32(“2147483648”);// 不符合要求,超出int型的数值范围 ToInt16方法: 将字符串转换为short(短整型)类型 int n=Convert.ToInt16(“123”); //字符串“123”转化为整数123 ToInt64方法: 将字符串转换为long(长整型)类型 ToUInt32方法: 将字符串转换为uint(无符号整型)类型

将字符串类型转换为float(单精度浮点型)类型 ToDouble方法: (2) Convert.ToSingle方法 将字符串类型转换为float(单精度浮点型)类型 ToDouble方法: 将字符串转换为double(双精度浮点型)类型 ToDecimal方法: 将字符串转换为decimal(十进制型)类型

(3) Convert.ToChar方法 将字符串转换为char(字符)类型 char cd=Convert.ToChar(“a”); 其他类型的数据也可以使用ToString方法被转换为字符串类型 string sa=Convert.ToString(1234); // 将整型常量转换为字符串

(4) Convert.ToBoolean方法 使用ToBoolean方法时,字符串必须是true或false

本讲小结 1 静态数据成员 2 静态方法 3 C#中的常用类型转换静态方法