11001 dotNet学习第11天笔记,附思维导图 – 恵玩科技

1、继承
	解决的问题:代码冗余
				让类与类之间产生了关系,为多态打下了基础。
			Student Teacher Driver  Person	
	缺点:打破了类的封装性。带来了安全隐患。
		
	子类继承了父类的哪些成员?
			--->属性、方法,并没有继承私有字段,和构造函数
			--->子类调用的是父类中默认的无参数的构造函数,父类有可能在默认的无参数的构造函数中对数据进行初始化。
	
	关键字
		this:
			--->代表当前类的对象
			--->在子类中显示的调用自己的构造函数
		base:
			--->指向父类的一个引用,通过base,可以调用父类的成员,不代表父类对象
		new:
			--->创建对象
			--->隐藏父类的成员
	--->Object是一切类的父类(基类)		
2、继承的两大特性
	---->单根性
		----一个儿子只能有一个爹,干爹不算。(object、接口都是干爹)
	---->传递性
		----继承的成员可以一层一层的向下传递。
		
3、继承练习:
	1、父类Che
		--->子类Car。Passenger 载客数   CarSayHello():我可以拉几个人..... Color、Brand
		--->子类Truck。Weight 载重      TruckSayHello():我可以拉几KG的货物 Color、Brand
	
	2、父类Father 
		子类 Son 姓 血型 爱好 爱打游戏
		子类 Daughter 姓 血型 爱好 爱跳舞
	
	
	

4、跨项目访问
	--->添加要访问的项目的引用
	--->导入要使用的类所在的命名空间
	--->将访问修饰符改变为public

5、访问修饰符
            访问修饰符:访问的权限
            private:私有的,只能在当前类的内部访问,出了这个类就访问不到了
            public:公开的,公共的,在哪都可以访问
            internal:只能在当前程序的内部访问,出了这个程序就访问不到了。类默认就是internal
            protected:只能在当前类的内部,以及该类的子类中访问
            类只能被public和internal修饰,默认就是internal
            protected internal:proceted+internal	


6、里氏替换原则
	---->子类可以赋值给父类
	---->如果父类中装的是子类对象,那么可以将这个父类转换为"对应"的子类对象
	
	我们使用两个关键字帮助我们实现类型转换,is、as
	is、as都表示类型转换,不同的是,他们的返回值不一样。
	is:是否可以执行类型转换 ,返回值是bool类型。
	as:表示类型转换,如果成功,则返回对应的对象,如果失败则返回null
	
	//null "" string s=null string s=""


7、集合的学习
	--->非泛型集合
		ArrayList、Hashtable
	--->泛型集合
		List<T> 、Dictionary<Tkey,Tvalue>
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	

.Net学习第十一天

打赏作者