主要是该书第5章的内容——封装。
可能之前有一些OOP的基础,所以草草的读完本章,没有深入研究。主要对其中某几个知识点进行总价一下。
第一个部分,构造函数和this的一些介绍,会用就行。
第二部分,static,分为静态成员和静态方法。静态方法只能从类级别而不是从对象引用调用。如:
Console.WriteLine("Hello");//正确
Console c = new Console();c.WriteLine("Hello");//错误
静态成员,同一类别的所有对象都会共享内存。
第三部分,这部分印象比较深刻的是举例说继承和聚合的区别。继承是一种is-a的关系,聚合是一种has-a的关系。
继承:六边形——继承——图形——继承——Object
聚合:一辆汽车中装一个音箱,音箱——聚合——汽车
例:class Radio
{
public void Power(bool turnOn)
{
Console.WriteLine("Radio on:{0}",turnOn);
}
}
class Car {
private Radio myRadio = new Radio(); //汽车“has-a"收音机
public void TurnOnRadio(bool onOff)
{
myRadio.Power(onOff);//到内部对象的委托调用
}
}
static void Main(string[] args)
{
Car viper = new Car();
viper.TurnOnRadio(false);//调用在内部被转发到Radio
}
第四部分经典内容是C#this和封装。这部分留着读《精通C#》论C#2(下)
this的用法很多和C++用法一致,比较不一样的是:在C#中让一个接受最多参数个数的构造函数做“主构造函数”,并且实现必需的验证逻辑。其余的构造函数可以使用this关键字把传入的参数发给主构造函数。