zl程序教程

您现在的位置是:首页 >  后端

当前栏目

c#面向对象 --相关知识

c# -- 相关 知识 面向对象
2023-09-11 14:19:58 时间

1.数据成员和属性的区别

1.属性是由get set 访问器为重要的组成部分

privat int a ; //这个为数据成员,成员变量

属性为 private int a;

public in a {get; set ;};

相当于以下代码的简化

 

              private int a;
            public in a
            {get
            {
            return a ;
            }
            set
            {
              a = vaule; //vaule是系统默认的一个传递参数
            }
            }

2区别SetA 和 GetA等自定义方法的区别就是简化,效率化了

2,属性的好处

1.好处:提高了安全性 ,简化代码

2.属性的设置条件 :在set中 我们可以用if(XX)return;的语句来限制修改的范围

3.属性的简写: 直接{get;set;}

4.属性的读写控制: 可以在get和set前面加上访问修饰服 private 让其 变成只可读或者只可写

public int a{ private get ; set ;}

3.匿名类型的性质

var 它的变量类型取决于 给变量赋值的值 的类型

var a = 1.0 f ; //那么var 此时就是float类型,且不可更改了

4.存储区域

1.动态存储区域

(1)栈区:相当于超市,访问的速度快,简单类型存储

(2)堆区:相当于仓库,访问的速度慢,复杂类型存储

2,静态存储区域

5.CG系统-堆区的垃圾回收系统

1.CG是CLR框架所编写的系统

2.怎么实现垃圾回收的:

在c#和java中,系统是可以自动回收垃圾的 ,也就是当开辟空间了时候,系统给你标记为正品,当走 之后标记为废品,然后CG系统进行回收

 

6,值类型 和 引用类型

值类型是传递一段 ,为数值

引用类型传递二段 ,一段引用也就是地址 ,另一段为其指向的 对象 : 数组,类,字符串类

 

7.ref 和 out

1.两个都是传递的参数的类型

2.ref 是 传递参数的地址的修饰符

3.out 是返回多个参数的修饰符

 

8,引用类型存储的实质

1.分为两个部分,引用部分(地址)存储到栈区中,值数据存储到堆去当中

 

9,字符串常量是怎么存储的

1,存储方法:首先地址存储在栈区,然后值存储在静态存储区,通过栈区的引用指向静态存储区当中的数据

2,好处:优化内存,减少不同空间的调用

 

10,字符串数组是怎么存储的

首先字符串的地址存储在栈区,字符串中每个数组的成员的地址存储在堆区,值存储在静态存储区中

11.开发环境就是编译的代码的时候,运行环境就是测试运行的时候

12.捕捉异常

1,try

在try里面加上break; 可以跳出循环

2,catch

catch(异常样例类型 XX) ,在其中可以进行提示或者修改

3,finally

不管有无异常最后都会执行