【无标题】

错误(Bug):程序出问题导致无法运行(语法错误),逻辑方面有瑕疵(逻辑错误)

调试:使用Console.Write或(WiteLine)方法向控制台输出变量的值,通过调试可以查看变量的值是            否符合我们的预期来调试错误

中断模式:可以暂停程序的执行,查看程序中的状态,可以让程序继续执行

断点:进入中断模式的一个标记,当遇到断点时,程序会进入中断模式(F9进入断点)

异常处理:包含三个关键字 try...catch...finally 语句(捕捉异常)

                   try{

                                //可能出现异常的代码

                        }catch()//括号里面捕捉哪些异常可以有多个,如果没有括号可以捕捉任何异常

                         {

                                    }   finally{   

                                        //不管任何情况都会执行此代码

                                       }

  try:包含了可能出现异常的代码(一条或者多条语句)

 catch:可以有0个、1个或者多个,如果没有catch块,必须有finally块,catch和finally可以同时存在

finally:包含了始终会执行的代码,不管有没有异常

 面向对象(oop编程):每个模块提供特定的功能,每个项目是孤立的,对程序变量结构划分,

提供非常大的多样性,增加了代码的重用率

类:创建对象的模块,每个对象都包含数据,并提供了处理和访问数据的方法,类定义了每个对象(称为实例)可以包含数据和功能

类中的数据和函数称为类成员(数据成员和函数成员)

数据成员:包含类的数据--字段,常量和事件的成员

函数成员:提供了操作类中数据的某些功能(方法、属性、构造方法和终结器(析够方法),运算符和索引器)

新建类步骤:1:  ——>2: ——>

                     3:——>4:

 创建对象:类名   对象名=new 类名();(实例化对象)

构造函数: 对象的初始化过程是自动完成的,但是需要初始化数据的函数,构造函数就是用于初                      始化的函数,声明基本的构造函数方法就是声明一个和所有在类同名方法,但是该方                     法没有返回类型,与类名同名

 实现构造方法的创建并初始化:

 

构造函数的参数问题: 在类里面参数名与形参名同名时使用this关键字,this指向的是参数名

属性:包含get和set(get得到,set获取)

 匿名类型:var  数据名;

 程序内存区域:堆、栈、静态存储区(程序所有数据都是在内存中)

栈的空间比较小,但是读取熟读块

堆的空间比较大,但读取速度慢

栈的特征:数据只能从栈的顶端插入和删除,把数据放入 栈顶 称为入栈(push),从栈顶删除数据称为出栈(pop)

图片:

内存中栈是由系统管理(.Net框架)

堆是一块内存区域,与栈不同,堆里的内存能够异任意顺序存入和移除,CLR的GC是内存管理机制也就是垃圾回收

值类型:(整数、bool、struct、char、小数)需要一段单独的内存,用于存储实际的数据(单独定义的时候放在栈中)

引用类型:(String、数组、自定义的类、内置的类) 需要两端内存:第一段 存储实际数据,它总是位于堆中,第二段 是一个引用(引用指的是内存地址),指向数据在堆中存放的位置

字符串常量放在静态存储区里面且字符串不能被修改

继承:一个类派生于一个基类型的所有成员和函数,该类拥有所有成员和函数

语法:类名:父类名

接口继承:表示继承了函数起那么,需要指定该类型具有某些可用的特性时,最好使用这种类型继承

多重继承:一个类派生了多个类,可以用于多重继承编写非常复杂但很紧凑的代码

this(base)作用:IDE提示和区分局部变量和字段

this:代表当前对象

base:代表访问父类

虚方法:把一个函数声明为 Virtual,就可以在任何派类中重写该类函数,在派生类中重写另一个函数时,要使用Override关键字显示声明,在子类里面重写虚函数之后不管在哪里调用都是重写之后的方法

隐藏方法:如果签明相同的方法在基类和派生类中都进行了声明,但是该方法没有分别声明为Virtual和Override派生类就会隐藏基类方法(要使用new关键字声明基类)

隐藏方法与虚方法区别:当通过父类去声明变量时,如果是虚方法她依然会调用重写的方法,但隐藏方法会调用父类方法

抽象类(abstract):允许把类和函数声明为abstract,抽象类不能实例化,可以包含普通函数和抽象函数(抽象函数只有定义没有函数体,抽象函数本身是虚拟的Virtual只有函数定义,没有函数体实现)

密封类:类前加sealed

密封方法:方法前加sealed

sealed:对于类不能继承该类,对于方法表示不能重写方法

派生类子类的构造函数(无参):先调用父类的,然后是子类的,base()可以直接不写,因为会默认调用父类中的构造函数且调用有参的构造函数

修饰符:用来修饰类型或者成员的关键字,可以指定方法的可见性
public(公有的):都可以访问该类型成员

protected(保护的):只有同一类或此类的派生类中的代码才可以访问该类型成员

private(私有的):只有同一类或结构中的代码才可以访问(只能在类模块内部访问)

internal:同一程序集中的任何代码都可以访问该类型或成员但是代码不可以

protected internal:在一程序集中体现的是internal的性质,在其他程序集中体现的是protected的性质

static:使用static修饰的类微静态类,所有成员必须是静态的,不能与abstract、sealed一起使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值