c#面向对象知识点高度总结

上传人:第*** 文档编号:34039486 上传时间:2018-02-20 格式:DOCX 页数:9 大小:31.21KB
返回 下载 相关 举报
c#面向对象知识点高度总结_第1页
第1页 / 共9页
c#面向对象知识点高度总结_第2页
第2页 / 共9页
c#面向对象知识点高度总结_第3页
第3页 / 共9页
c#面向对象知识点高度总结_第4页
第4页 / 共9页
c#面向对象知识点高度总结_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《c#面向对象知识点高度总结》由会员分享,可在线阅读,更多相关《c#面向对象知识点高度总结(9页珍藏版)》请在金锄头文库上搜索。

1、第 1 章 概述1、 .NET Framework 体系结构用不同的开发语言,开发各种类型应用程序,在 CLR 的帮助下,运行于操作系统。2、 CLR: 公共语言运行库建立在操作系统之上,为.NET 应用程序提供运行的执行环境。作用:类库加载、内存管理与无用单元回收、错误处理、线程执行、代码执行、代码安全验证、多语言支持、提供中间语言、提供公共类型系统(CTS) 。3、 .NET 应用程序的执行过程图 PPT 36 37 页4、 FCL :.NET 框加类库.5、一个 C#应用程序必须一个 Main 方法,静态。6、 .NET 应用程序的结构一个解决方案包含多个项目。.sln一个项目中包含:P

2、rogram 类,放 Main(),都是静态的。.csproj 项目文件 bin: 类文件,可执行文件。Debug:调试下的文件。Release: 发布下的文件Properties:资源文件7、 .NET 的特点自动内存管理、安全类型系统、更好的版本控制、多语言支持、XML Web Service第 2 章 语言基础1、注释/ /*/ /2、常量const float PI=3.1415926;3、访问修饰符public:任何 internal:当前项目 protected:当前类与子类 private:当前类4、数据类型值类型: int char 结构 枚举引用类型: string 数组 类

3、 接口 委拖装箱:值-引用 拆箱:引用-值5、字符串类 StringIndexOf() Substring() ToLower() ToUpper() Trim()6、条件语句7、循语语句for while foreach do.while8、数组值类型数组:一维: int s=new int10; s2=6;二维: int k=new int3,2; k01=5;引用类型数组;引用类型的数组的成员在使用时,必须重新实例化。 class A public int x ;public int y;A a=new A10; a0=new A(); a0.x=4; a0.y=9;9、枚举定义:pub

4、lic enum 枚举名称 成员如:public enum color red,green5 ,blue;作用: color.red; 值是整型,从 0 开始。可以赋值。第 3 章 在 C#中实现 OOP 概念1、面向对象的基本要素:抽象性、 封装性、 继承性、多态性2、对象:万物皆对象。 对象是真实存在的,它的属性是有一定的内容的。从两方面描述对象:状态:属性 行为:方法。对象声明:A a; /不分配内存。对象的实例化:a=new A(); /分配空间。常用:A a=new A();对象的使用:a.变量=值; 返回值接收 a.方法(参数) ;3、类 :一组对象的描述。C#中一个程序至少要有一

5、个类。类的定义:class 类名/成员变量/构造方法/方法注意:成员变量名不能与方法同名。4、成员变量与局部变量成员变量:在类中定义的变量。局部变量:在方法定义的变量。当成员变量与局部变量同时,而在方法内,成员变量被隐藏。5、实例变量与静态变量实例变量 int x=4; 对象名.x= 值;静态变量 static int y=5; 类名.y=值;6、类的方法public int Add(string x,string y);参数: 按值传递 class A public int Add(string x,string y); A a=new A(); int k=Add(4,5); 按引用传递

6、ref:形参影响实参class A public int Add(ref int x, ref int y) x=2;y=4; return 7;A a=new A(); int a=4,b=8, k ; k=Add(ref a,ref b);结果:a=2 ,b=4,k=7; 输出参数 out:作用:为调用者提供更多返回结果值。class A public int Add(out int x, out int y,int m) x=2;y=4;m=8; return 7;A a=new A(); int a=4,b=8,m=9, k ; k=Add(out a, out b ,m);结果:a=

7、2 ,b=4,k=7,m=9 参数数组:为方法提供相同类型、不定个数的参数。class A public int Add(params int m) foreach(int n in m)s=s+n; return s;A a=new A(); a.Add(34,54,65);a.Add(2,4,5,65,76,86,34,65);7、构造方法与类同名没有返回值可重载用于初始化自动调用不一定是 public如果类没有定义方法,系统会提供一个默认构造方法。如果定义了一个构造方法,系统不再提供默认构造方法。8、析构函数作用:收回类所占的空间,在主程序 main 执行完后调用。特点:与类同名,名前加

8、 。没有返回值。没有访问修饰符。没有参数。一个类,只有一个析构函数。9、静态方法与实例方法静态方法:public static void show(); 类名. 方法() ; 不能用 this,base。实例方法:public void show(); 对象.方法();10、方法重载在一个类中或子类与父类中,存在同名不同参(参数类型、参数个数不同)的方法。在一个类中public int fun(int x) private void fun() 是 Public int fun (int x,int y)Private string fun(int x,int y)不是Public int f

9、un (int x,string y)Private int fun (string x,int y)是 1.void f1(int) 2.int f1(int) 3.int f1(int,int) 4.float k(int)23 是13 是子类与父类中class A public int fun(int x) return x;class B:A public int fun(string y)retrun “A”;11、操作符重载语法: public satatic 返回值类型 operator 操作符 (参数) 如:public satatic string operator-(str

10、ing a ,string b) /? 特点: 访问修饰符只能是 public 只能是 static 返回值类型 可是结构或类 operator 是关系字 操作可是一元的,也可以是二元的。如果一元,那么有一个参数,如果二元有两个参数。第 4 章 在 C#中高级 OOP 概念1、继承子类继承父的属性方法等。能继承 public、protected 修饰的属性和方法。不能继承private 与构造方法、析构函数。C# 中,所有的类继承自 Object.继承的种类:单一继承:一个子类有一个父类。多重继承:一个子类有多个父类,C#中不支持多继承,C#中的多继承由接口实现的。2、继承的语法class A

11、 class B:A 3、重写 变量重写:子类中与父类同名的变量class A public int x=4;class B:A new public int x=7;方法重写:子类中与父类的方法同名、同参class A public void Show (string x) ; class B:A new public void Show (string x); A a=new B (); a.Show(); A 类的 Show();4、方法覆盖: 子类中与父类的方法同名、同参class A virtual public void Show (string x) ; - virtual 虚方

12、法class B:A override public void Show (string x); A a=new B (); a.Show(); B 类的 Show();覆盖的条件: 同名、同参、同返回值。可以覆盖的方法必须是虚方法(virtual) ,抽象的(abstract)或重写(override),非虚方法和静态方法不可以覆盖。不能用 new 、static、virtrual、abstract 修改覆盖的方法。5、 base 与 this 关系字。base:在子类中调用父的方法。class A public void show()class B:A new public void sh

13、ow()class A public int x;public A(int x) this.x=x;class B:A:base(9) /调用父类的构造方法。 base.show();/调用父的方法。6、继承时父类子类的构造方法与析构函数的执行顺序创建时: 基类的构造方法-派生类的构造方法。释放时: 派生类析构函数-基类的构造方法。7、密封类不能被继承的类 ,sealed8、多态性多态的方式:编译时多态:通过方法重载实现。运行时多态:通过方法覆盖实现。C#中实现多的手段: 在基类中定义虚方法。 在派生类中重写基类的虚方法。 用派生类的对象实例化基类的对象。 用基类对象调用方法。9、抽象基类与抽

14、象方法抽象基类:主要用于被继承的类。抽象方法:用于子类中进行重写的方法。abstract class A /抽象基类public int x=5; /抽象类中包含成员变量public void show() console.writeline(“你好”); /抽象类中包含实例方法。abstract public void show2(); /抽象方法, 只有方法说明,没有方法的实现。class B:Aoverride public void show2().;抽象基类与抽象方法的特点:6 点10、接口作用:规范代码 实现多继承interface IFileint delfile();void

15、disFile(string x); class A: IFile /当一个类使用一个接口时,称“实现”该接口。public int delfile() .;public void disFile(string x) .; 接口的特点: 不能被实例化。 只能包含方法的声明,不能包含方法的实现。 任何类都可以实现接口,一个类能够实现多个接口。 实现接口的类,必须实现接口所有的方法。 接口中没有数据成员、构造方法、析构函数、运行符。 接口包含:方法、属性、索引、事件。 类可以实现接口的同时,继承其它的类(类放前,接口放后)接口与类的区别? 类只能继承一个父类。接口可以有多个父接口。 子类可以选择是否覆盖父类的方法,类必须实现接口中的所有方法。接口与抽象类的相同点与区别?相同点: 都不能被实例化。 都用于被继承。 都包含方法声明。 派生类必须实现未实现的方

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号