定义一个类
我的出发点是从JavaScript的设计模式与C#基础寻找共通点进行学习,所以一些雷同的语法写法就不详细列出学习了,有需要可自行寻找文档学习。
以下是封装定义一个类的两种代码。
C#代码:
//定义一个类
public class stamp
{
public string Name { get; set; } //定义引用类型
public int Age { get; set; } //定义值类型
}
//调用
//stamp Stamp_1 = new stamp { Name = "Premiere", Age = 25 };
Node代码:
//定义一个类
class stamp{
//构造原型链
constructor(Name,Age)
{
this.Name = Name;
this.Age = Age;
return this;
}
}
//调用
//var Stamp_1 = new stamp('Premiere','25')
从C#代码可以看出来,定义一个类的属性需要指定类型和定义引用类型、定义值类型,这里的get; set;
表示什么呢?其实就相当于以下代码:
//public string Name { get; set; }
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
从上面可以发现,第一个类型的name属性未封装,其name属性直接通过public关键字暴露给系统中的其他类了,而第二个类型的name属性通过get set关键字进行了封装,get和set分别对应的是可读和可写。