浪漫骑士必胜

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

   值类型和引用类型及其它

  下面我们所讲解的内容是基础的内容,由于这部分内容都在控制台上面。所以显得稍微有些个枯燥,但是经过多加的练习在后面我们在winform上面写程序的时候会相对的轻松,而且会做出很多有意思的东西来。现在的博客园上面很多的难度较高,或者说比较难理解的内容基本都是建立在我所论述的内容的基础上的,希望更多的朋友关注我的文章。也希望大家提出对我文章的宝贵的建议。以便我后面的文章,不管是从内容上,还是形式上的调整。

 

 

图一、结构和类不一样的地方

  如果是结构,在结构中写构造函数,那么必须要把结构中的字段完全赋值,否则报错。

 

图二、两种不同的类型

  举例:结构版的Person的赋值与类版的Person的赋值

Int、decimal、bool、double、byte、枚举、结构等类型(值类型)是传递拷贝;对象(引用类型)则是传递引用。

  方法间对象String 引用类型  数组 类

 

图三、两种不同类型的又一个反应

 

图四、关于继承

  继承的符号:

利用继承实现Student类和Teacher类继承自Person类。

Student类和Teacher类继承父类的属性和方法。

Student类和Teacher类还有自己独有的属性和方法。

 在C#中,所有的类都直接或间接的继承自了object类。(当我们定义一个类的时候,如果没有写:继承一个类,那么这个类就继承了object类)

 

图五、通过base关键字可以调用父类那个有参的构造函数

 

图六、代码的简写问题

  上面这段内容需要我们在熟练掌握类,还有里面的字段、属性、还有构造函数的基础上才能掌握。需要大家耐心先把之前的代码敲一遍。这里可以点击文章最下面的近期作者文章列表,查看我们之前的文章。

  对上面一段内容的总结:

  如果 父类不写任何的构造函数

  子类 也不写构造函数

  子类会调用父类的那个默认的无参数的构造函数

 

  如果子类写了构造函数,父类也写了一个有参数的构造函数,那么 因为子类调用父类默认无参数的构造函数,所以,这个时候会报错。

  肿么办?

  第一可以在父类中写一个无参数的构造函数 就可以了

  要么可以通过base关键字,这样就可以调用父类的有参数的构造函数,也能调用无参数的构造函数

 

Protected

Protected 访问修饰符不允许其他非子类访问 

新增内容:看懂了下面这幅图的话,基本上就能理解上面这句话的意思了。注意:下面的代码是写在一起的。

 

图七、protected

Is用的时候 返回的是 bool类型  能转换 返回是true 不能转换 返回的是false

 

 

As 用的时候 返回的是 直接转换的那个类的对象,如果能转换 就直接转了。如果转换不了,返回的是空

 

 

作者近期文章列表:

C#基础教程(完全免费,献给代码爱好者的最好礼物。注:本 作者分享自己精心整理的C#基础教程,无任何商业目的。希望与 更多的代码爱好者交流心得,也请高手多多指点!!!)
面向过程 三种循环的比较
C#中的方法(上)
我们常见的数组
面向对象 思想的转变
C#中超级好用的类
C#中析构函数和命名空间的妙用
C#中超级好用的字符串
C#中如何快速处理字符串
GDI+ 这些年我收集的GDI+代码
这些年我收集的GDI+代码2
HTML概述 你不能忽视的HTML语言
你不能忽视的HTML语言2精编篇
你不能忽视的HTML语言3
posted on 2012-08-04 09:00  小事好  阅读(1783)  评论(3编辑  收藏  举报