ITPub博客

首页 > 应用开发 > IT综合 > C#入门经典(第五版)学习笔记(三)

C#入门经典(第五版)学习笔记(三)

原创 IT综合 作者:shan__bin 时间:2014-06-21 18:29:17 0 删除 编辑

---------------面向对象编程简介---------------
UML表示方法:
1)方框上中下三分
2)上框写类名
3)中框写属性和字段,例如:+Description:string +公共成员-私有成员  Description成员名  string成员类型
4)下框写方法,例如:+AddSugar(in amount:byte):byte +-如上  in/out/inout数据流方向
5)静态成员带下划线
6)接口:画在类名边,棒棒糖型
7)继承:从子类向父类的箭头

构造函数:
构造函数与类同名,默认构造函数无参数,可定义带参数的非默认构造函数

静态成员:
静态成员可在类的实例间共享,可看做类的全局对象

---------------定义类---------------
class关键字定义类
类的修饰符关键字:
public/protected/private  公共类/受保护类/私有类
abstract/sealed  抽象类(不能实例化,只能继承)/密封类(不能继承)

继承:
先继承基类,然后才能指定支持的接口,不得反转,接口可支持多个

interface关键字定义接口
接口的修饰符关键字:
public  公共接口

---------------定义类成员---------------
可用关键字static,表示静态成员
定义字段可用关键字readonly,表示只能在执行构造函数过程中赋值,或由初始化赋值语句赋值
定义方法关键字:
virtual——方法可重写
abstract——方法必须在非抽象的派生类中重写(只用于抽象类中)
override——方法重写了一个基类方法
extern——方法定义放在其他地方
定义属性可用get{}set{}代码块,可用virtual/override/abstract关键字

显示隐藏基类方法:
public class MyBaseClass
{
    public void DoSomething()
    {}
}
public class MyDerivedClass : MyBaseClass
{
    new public void DoSomething()
    {}
}
注意隐藏和重写的区别

接口的实现:
1)所有接口成员都是公共的
2)接口成员不能包含代码体
3)接口不能定义字段成员
4)接口成员不能用关键字static/virtual/abstract/sealed来定义
5)类型定义成员是禁止的
在类中实现接口:
实现接口的类必须包含该接口所有成员的实现代码,且必须匹配指定的签名(包括匹配指定get和set块),并且必须是公共的
可用关键字virtual或abstract来实现,也可在基类上实现接口
如果显式实现接口成员,那该成员就只能通过接口来访问,不能通过类来访问
例如:
public class MyClass:IMyInterface
{
    public void IMyInterface.DoSomething()
    {}
    public void DoSomethingElse()
    {}
}
由于DoSomething()是显式实现的,而DoSomethingElse()是隐式实现的,之后后者可以直接通过MyClass的对象实例来访问。

部分类定义:
把类的定义放在多个文件中,需要对每个此类的定义文件中使用partial关键字
例如:
public partial class MyClass
{
    …
}
在另一个文件中
public partial class MyClass
{
    …
}

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10663598/viewspace-1190784/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-05-23

  • 博文量
    7
  • 访问量
    11916