结构
在 C# 中,结构是值类型数据结构。它使得一个单一变量可以存储各种数据类型的相关数据。struct 关键字用于创建结构。
结构不支持继承。结构不能声明默认的构造函数。
为了定义一个结构,必须使用 struct 语句。struct 语句为程序定义了一个带有多个成员的新的数据类型。
using System; struct Books { private string title; private string author; private string subject; private int book_id; public void getValues(string t, string a, string s, int id) { title = t; author = a; subject = s; book_id =id; } public void display() { Console.WriteLine("Title : {0}", title); Console.WriteLine("Author : {0}", author); Console.WriteLine("Subject : {0}", subject); Console.WriteLine("Book_id :{0}", book_id); } }; public class testStructure { public static void Main(string[] args) { Books Book1 = new Books(); /* 声明 Book1,类型为 Book */ Books Book2 = new Books(); /* 声明 Book2,类型为 Book */ /* book 1 详述 */ Book1.getValues("C Programming", "Nuha Ali", "C Programming Tutorial",6495407); /* book 2 详述 */ Book2.getValues("Telecom Billing", "Zara Ali", "Telecom Billing Tutorial", 6495700); /* 打印 Book1 信息 */ Book1.display(); /* 打印 Book2 信息 */ Book2.display(); Console.ReadKey(); } } //当上面的代码被编译和执行时,它会产生下列结果 Title : C Programming Author : Nuha Ali Subject : C Programming Tutorial Book_id : 6495407 Title : Telecom Billing Author : Zara Ali Subject : Telecom Billing Tutorial Book_id : 6495700
类
类:一组具有相同数据结构和相同操作的对象的集合.。
对象:类的实例化。
要使用对象,必须先定义类,然后再创建对象。
标准格式 [访问修饰符] class 类名 [:基类]
{ 类成员(变量、常量、方法、属性、事件、索引器、操作符等)定义; }
类成员
类是由方法成员,数据成员(变量、常量)等组成。 方法的责任是用来实现类的行为,字段存储类的状态。
创建对象
声明了类之后,我们就可以通过new 关键字来创建类的实例,这个实例就是该类的一个对象。
类实例创建的格式为: 类名 实例名(对象名)=new 类名(参数);
使用 static 关键字把类成员定义为静态的。当我们声明一个类成员为静态时,意味着无论有多少个类的对象被创建,只会有一个该静态成员的副本。
关键字 static 意味着类中只有一个该成员的实例。静态变量用于定义常量,因为它们的值可以通过直接调用类而不需要创建类的实例来获取。
静态变量可在成员函数或类的定义外部进行初始化。也可以在类的定义内部初始化静态变量。
类的 构造函数 是类的一个特殊的成员函数,当创建类的新对象时执行。
构造函数的名称与类的名称完全相同,它没有任何返回类型。
using System; namespace LineApplication { class Line { private double length; // 线条的长度 public Line() { Console.WriteLine("对象已创建"); } public void setLength( double len ) { length = len; } public double getLength() { return length; } static void Main(string[] args) { Line line = new Line(); // 设置线条长度 line.setLength(6.0); Console.WriteLine("线条的长度: {0}", line.getLength()); Console.ReadKey(); } } }
默认的构造函数没有任何参数。但是如果需要一个带有参数的构造函数可以有参数,这种构造函数叫做参数化构造函数。
这种技术可以帮助在创建对象的同时给对象赋初始值。
using System; namespace LineApplication { class Line { private double length; // 线条的长度 public Line(double len) // 参数化构造函数 { Console.WriteLine("对象已创建,length = {0}", len); length = len; } public void setLength( double len ) { length = len; } public double getLength() { return length; } static void Main(string[] args) { Line line = new Line(10.0); Console.WriteLine("线条的长度: {0}", line.getLength()); // 设置线条长度 line.setLength(6.0); Console.WriteLine("线条的长度: {0}", line.getLength()); Console.ReadKey(); } } }