c# 类成员的定义 定义方法、字段和属性
来源:互联网 发布:windows xp sp2 编辑:程序博客网 时间:2024/04/28 23:46
c# 类成员的定义 定义方法、字段和属性
c#类的成员包括字段、属性和方法。所有成员都有自己的访问级别,用下面的关键字之一来定义:
public----成员可以有任何代码访问;
private----成员只能有类中的代码访问(如果没有使用任何关键字,默认使用这个关键字);
internal----成员有定义他的项目(程序集)内部的代码访问;
protected----成员只能由类或派生类的代码访问。
后两个关键字可以合并
protected internal----他们只能由项目(程序集)中的派生代码来访问。
1.定义字段:
字段用标准的变量声明格式和前面介绍的修饰符来声明(也可以初始化),例如:
公共字段推荐用PascalCasing的形式来命名,私有字段没有推荐的命名形式,一般使用camelCasing的形式来命名。
字段可以使用关键字readonly,表示这个字段只能在执行构造函数的过程中赋值,或由初始化语句赋值,例如:
2.定义方法:
方法使用标准的函数格式,以及可访问性,和可选的static修饰符来声明,例如:
公共方法也用PascalCasing的形式来命名。
注意:如果声明了static关键字,这个方法就只能通过类来访问,而不能通过对象实例还访问。
也可以在方法定义中使用下面的关键字:
virtual----方法可以重写;
abstract----方法必须在非抽象的派生类中重写(只用于抽象类);
override----方法重写了一个基类方法(要重写方法,必须用这个关键字);
extern----方法定义在其他地方;
3.定义属性
属性定义与地段类似,但内容比较多。属性有两个类似于函数的块,一个用于获取属性的值,一个用于设置属性的值,例子:
get 块一般有一个属性类型的返回值,简单的属性一般与一个私有字段相关联,用来控制对这个字段的访问,这是get块可以直接返回该字段的值;
上面的myInt字段外部不能访问,只能通过属性来访问该字段。
set函数以类似的方式把一个值赋给字段,这里可以使用关键字value引用用户提供的属性值;value值等于类型和属性相同的一个值,如果属性的类型和字段的类型相同,就不用进行类型转换。
属性可以使用vartual、override和abstract关键字,但是不能将这几个关键字用于字段。
public----成员可以有任何代码访问;
private----成员只能有类中的代码访问(如果没有使用任何关键字,默认使用这个关键字);
internal----成员有定义他的项目(程序集)内部的代码访问;
protected----成员只能由类或派生类的代码访问。
后两个关键字可以合并
protected internal----他们只能由项目(程序集)中的派生代码来访问。
1.定义字段:
字段用标准的变量声明格式和前面介绍的修饰符来声明(也可以初始化),例如:
class myClass
{
public int MyInt;
}
{
public int MyInt;
}
公共字段推荐用PascalCasing的形式来命名,私有字段没有推荐的命名形式,一般使用camelCasing的形式来命名。
字段可以使用关键字readonly,表示这个字段只能在执行构造函数的过程中赋值,或由初始化语句赋值,例如:
class myClass
{
public readonly int MyInt=17;
}
字段也可以使用static声明为静态的:{
public readonly int MyInt=17;
}
class myClass
{
public static int MyInt;
}
{
public static int MyInt;
}
2.定义方法:
方法使用标准的函数格式,以及可访问性,和可选的static修饰符来声明,例如:
class myClass
{
public string MyString()
{
return “这是一个方法”;
}
}
解析:{
public string MyString()
{
return “这是一个方法”;
}
}
class myClass
{
//开始声明方法代码
public string MyString()
{
return “这是一个方法”;
}
//结束声明方法代码
}
{
//开始声明方法代码
public string MyString()
{
return “这是一个方法”;
}
//结束声明方法代码
}
公共方法也用PascalCasing的形式来命名。
注意:如果声明了static关键字,这个方法就只能通过类来访问,而不能通过对象实例还访问。
也可以在方法定义中使用下面的关键字:
virtual----方法可以重写;
abstract----方法必须在非抽象的派生类中重写(只用于抽象类);
override----方法重写了一个基类方法(要重写方法,必须用这个关键字);
extern----方法定义在其他地方;
3.定义属性
属性定义与地段类似,但内容比较多。属性有两个类似于函数的块,一个用于获取属性的值,一个用于设置属性的值,例子:
class myClass
{
private int myInt;//字段
//(下面为属性)
public int MyInt
{
get
{
return myInt;
}
set
{
myInt=value;
}
}
}
{
private int myInt;//字段
//(下面为属性)
public int MyInt
{
get
{
return myInt;
}
set
{
myInt=value;
}
}
}
get 块一般有一个属性类型的返回值,简单的属性一般与一个私有字段相关联,用来控制对这个字段的访问,这是get块可以直接返回该字段的值;
上面的myInt字段外部不能访问,只能通过属性来访问该字段。
set函数以类似的方式把一个值赋给字段,这里可以使用关键字value引用用户提供的属性值;value值等于类型和属性相同的一个值,如果属性的类型和字段的类型相同,就不用进行类型转换。
属性可以使用vartual、override和abstract关键字,但是不能将这几个关键字用于字段。
- c# 类成员的定义 定义方法、字段和属性
- c# 类成员的定义 定义方法、字段和属性
- 类的成员及其定义(常量,属性,字段,方法)
- 【c#】定义类成员(字段、方法、属性)
- 类。字段。方法。属性之间的定义及部分区别。
- C#中属性实为方法,如果类中只是定义了属性,则编译器会自动生成相应的字段
- C#定义类成员
- c#类成员(字段、属性、方法、事件)
- c#类成员(字段、属性、方法、事件)
- VB.NET 与 C# 定义事件,方法,属性,字段,构造函数的不同之处
- 定义枚举的构造方法和字段
- 定义类的属性方法
- java类在JAVA中定义类成员用属性set和get方法表示
- 在JAVA中定义类成员用属性set和get方法表示
- PHP中属性和方法的定义
- 节点的定义、属性和方法
- JS类定义:涵盖了javascript公有成员定义、私有成员定义、特权方法定义的简单示例
- 4.1 类和成员函数的定义
- Hibernate - 悲观锁和乐观锁的实现
- c编译过程
- asp.net相对路径
- 如何使QTextEdit背景透明
- 一位软件工程师的6年总结
- c# 类成员的定义 定义方法、字段和属性
- A High Level Comparison Between Oracle and SQL Server - Part II
- jQuery调用Asp.net Ajax页面中的方法
- jQuery和ASP.NET结合使用
- 爱你,我该怎么办
- 50个实用的javascript工具
- [请教] 如何将P6spy,sqlprofiler 结合到Spring+Hibernate中
- 消极的态度,积极的责任。
- 冬去春不来