黑马程序员04——类类型及其他杂项
2012-10-05 16:02
169 查看
---------------------- Windows Phone 7手机开发、.Net培训、
期待与您交流!----------------------
在5种用户定义类型中,类类型(class)可能是最重要的。
类是一种能存储数据并执行代码的数据结构,它包含9种成员,分为两类。
1.数据成员:它存储与类和类的实例相关的数据。数据成员通常模拟该类所表示的现实世界事物的特性。
2.函数成员:它执行代码。函数成员通常模拟类嗦表示的现实世界事物的功能和操作。
可以这么说:运行中的程序其实就是一组相互作用的对象。
不像16种预定义类型已经由C#定义,要使用类类型需要自己定义,通过编写类的声明来定义类。
类的声明定义新类的特征和成员。它并不创建类的实例,但创建了用于创建实例的模板。类声明提供下列内容:
类的名称
类的成员
类的特征
前两者很好理解,类的特征
类声明在日常使用中也被称为「类定义」。
字段和方法是最重要的类成员。前者是数据成员,后者是函数成员。
声明方法的最简语法包括一下部分:
返回类型:它声明方法返回值的类型。如果不返回值,则被指定为void。
名称 :方法的名称
参数列表:它由一对圆括号组成,如果有参数,它们被列在圆括号中,有逗号(,)隔开。
方法体:它由一堆大括号组成,大括号内包含代码(也可能不包括)
方法和字段一样,没有定义于类之外的全局方法。
声明类类型的变量(其实是所有引用类型变量)时,所分配的内存是用来保存引用的,而不是用来保存类对象实际数据的。要为实际数据分配内存,需要使用new运算符。
new运算符为任意指定类型的实例分配并初始化内存。它依据类型的不同从栈或者堆里分配。
使用new运算符组成一个对象创建表达式: new typeName(参数列表)
可访问性修饰符:它控制能够访问该「类型、成员和其他实体」的程序文本区域,即是其他地方能否访问它。
类中成员的可访问性:
1.默认private,即是以下两个声明都指定了private int成员
private int MyInt1; //显式声明为私有
int MyInt2; //隐式声明为私有
2.private即使在类的实例中也不能访问,只能在类的声明中访问。
----------------------Windows
Phone 7手机开发、.Net培训、 期待与您交流!----------------------
详情请查看 http://edu.csdn.net/heima/
期待与您交流!----------------------
在5种用户定义类型中,类类型(class)可能是最重要的。
类是一种活动的数据结构
在面向对象设计之前,程序猿们仅把程序当作指令的序列。那时的焦点主要放在指令的组合和优化上。随着面向对象(OO)的出现,焦点从优化指令转移到组织程序的数据和功能上来。程序的数据和功能被组织为逻辑上相关的数据项和函数的封装,称之为类。类是一种能存储数据并执行代码的数据结构,它包含9种成员,分为两类。
1.数据成员:它存储与类和类的实例相关的数据。数据成员通常模拟该类所表示的现实世界事物的特性。
2.函数成员:它执行代码。函数成员通常模拟类嗦表示的现实世界事物的功能和操作。
程序和类
一个运行中的C#程序是一组相互作用的类型对象,它们中大部分是类的实例。可以这么说:运行中的程序其实就是一组相互作用的对象。
不像16种预定义类型已经由C#定义,要使用类类型需要自己定义,通过编写类的声明来定义类。
类的声明定义新类的特征和成员。它并不创建类的实例,但创建了用于创建实例的模板。类声明提供下列内容:
类的名称
类的成员
类的特征
前两者很好理解,类的特征
类声明在日常使用中也被称为「类定义」。
类成员
类有9种成员,可见C#语言规范。9种成员分为两类:数据成员和函数成员。字段和方法是最重要的类成员。前者是数据成员,后者是函数成员。
字段
字段是隶属于类的变量(记得C#中有4种变量么)。C#中所有的字段都必须在类型声明内部声明。和C/C++不同,不能在类型声明的外部声明全局变量。但是,C#中的静态字段有全局变量相似的功能。方法
成员是具有名称的可执行代码块,也有一种未命名的匿名方法。声明方法的最简语法包括一下部分:
返回类型:它声明方法返回值的类型。如果不返回值,则被指定为void。
名称 :方法的名称
参数列表:它由一对圆括号组成,如果有参数,它们被列在圆括号中,有逗号(,)隔开。
方法体:它由一堆大括号组成,大括号内包含代码(也可能不包括)
方法和字段一样,没有定义于类之外的全局方法。
创建变量和类的实例
声明变量时,会自动初始化变量为默认值。声明类类型的变量(其实是所有引用类型变量)时,所分配的内存是用来保存引用的,而不是用来保存类对象实际数据的。要为实际数据分配内存,需要使用new运算符。
new运算符为任意指定类型的实例分配并初始化内存。它依据类型的不同从栈或者堆里分配。
使用new运算符组成一个对象创建表达式: new typeName(参数列表)
访问修饰符
C#中,类型、成员和其他实体都支持访问修饰符。可访问性修饰符:它控制能够访问该「类型、成员和其他实体」的程序文本区域,即是其他地方能否访问它。
类中成员的可访问性:
1.默认private,即是以下两个声明都指定了private int成员
private int MyInt1; //显式声明为私有
int MyInt2; //隐式声明为私有
2.private即使在类的实例中也不能访问,只能在类的声明中访问。
----------------------Windows
Phone 7手机开发、.Net培训、 期待与您交流!----------------------
详情请查看 http://edu.csdn.net/heima/
相关文章推荐
- 黑马程序员——09C语言其他数据类型学习
- 黑马程序员--04.泛型深入--02【参数化类型的特点】
- 黑马程序员——C语言中指针与其他数据类型的结合使用
- 黑马程序员——C语言小结------其他数据类型
- 黑马程序员——C语言基础——其他数据类型
- 黑马程序员—C语言—其他数据类型及小结
- 黑马程序员--IO流04--其他类
- 黑马程序员--IOS入学学习--5-其他数据类型及递归
- 黑马程序员-其他类型对象
- 黑马程序员-IOS-C语言基础-其他数据类型及总结
- 黑马程序员-iOS基础-C语言基础(六)-复杂数据类型及其他
- 黑马程序员——Objective-C程序设计(第4版)学习笔记之04-数据类型和表达式——黑马 IOS 技术博客
- 局部类型、空属类型、静态类、和其他杂项技术zz
- 黑马程序员————C语言基本语法(数组、字符串、指针、其他数据类型)
- 黑马程序员--04.泛型深入--03【泛型知识补充】【类型推断】
- 黑马程序员 -- C语言 指针 其他类型
- 黑马程序员-IOS学习笔记-C语言基础其他数据类型及总结
- 黑马程序员--IO流中的File类和Properties类、其他流
- 【黑马程序员】---C语言数据类型总结02
- 04.C#类型系统、值类型和引用类型(二章2.2-2.3)