博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#学习日志 day 4 ------ 类相关---this指针以及相关关键字
阅读量:4704 次
发布时间:2019-06-10

本文共 1372 字,大约阅读时间需要 4 分钟。

c#中的类和java中的类没什么太大区别。但是c#有些特有的关键字以及属性使得c#具有一些特性。

 

  首先就是this关键字,this在c++和java中都有,可以表示当前对象,以及变量所属对象等。例如

public void somemethod(int hour1){

    this.hour = hour1;
}

或者otherobject.bar(this) 把当前对象传给otherobject

还有就是指示变量属于哪个对象。

this.z = 5;

等等。这里不作赘述。

  c#中还有using关键字,

class t{

  using(font thefont = new font("a",10.0f))
{
    //use thefont
}//compiler will call dispose on thefont

thefont在using中用完后会被直接析构,安全稳定。

同时要避免下面这种用法。

font thefont = new font()

using(thefont){
//use thefont
}//dispose

这样thefont也会被析构,所以外界不能再用thefont了。所以会存在风险。

 

  在c#中,函数的变量传递默认是值传递,所以函数内部对变量的修改若没有返回的话是不会对外部产生影响的。

所以这里就要提到一个ref关键字。ref会使变量按引用传递。下面是例子:

int a = 0;

some(ref a){
    a = 234;
}
此时在外部a就变成了234。

而这里还有out关键字,out的作用和ref没有太大区别,只是out a

可以不用对a进行初始化,但是需要声明。

 

  这里还有一个简单的例子区分函数的重载和多态

重载

void myM(int p1);
void myM(int p1,int p2);
返回值不同不是重载
polymorphism多态
void myM(int a);
void myM(string a);

 

  c#还有一个重要的特性就是它具有属性,即properties

属性可以很好的连接用户和开发者。这里有一个简单的示例

number就是一个属性,set和get可以设置权限,使得外部只能进行限定操作,

而在内部可以对number进行修改。这里有效的连接了用户和开发者。

 

还有readonly关键字

public static int a;可读可写。

----
public static readonly int a;只能读不能写。

 

还有inheritance & polymorphism

override 基类要public virtual void 才能显示出多态特性

还有隔断基类方法

public new virtual void Sort()下面是示例

运行之后是 可以看出,编译时,程序是从A开始寻找所要的类,

在C中有public new virtual void,所以被隔断,直接停在B。

 

当然,c#支持运算符的重载,但是运算符重载要遵循实用原则,否则会增加写程序的难度。

以上就是我对c#中类方面关键字的总结。希望对大家有帮助。

转载于:https://www.cnblogs.com/ltpnimeia/p/4378633.html

你可能感兴趣的文章
付费版百度指数 就是这么坑爹
查看>>
uva 116 Unidirectional TSP【号码塔+打印路径】
查看>>
关于android的2.2与4.4的文件读取的一点发现
查看>>
关于MAC的pkg和mpkg的分别
查看>>
11. 尽可能减少DB2的SQL请求
查看>>
MVC图片上传
查看>>
Hive优化(转)
查看>>
Android获取服务器Json字符串并显示在ListView上面
查看>>
4-13 杂记
查看>>
配置Spring数据源c3p0与dbcp
查看>>
uitabbarcontroller中 在设置tab bar item的image属性后不显示问题
查看>>
MVC静态化
查看>>
『MXNet』第十二弹_再谈新建计算节点
查看>>
『Numpy学习指南』排序&索引&抽取函数介绍
查看>>
WebApi用JilFormatter处理客户端序列化的字符串加密,之后在服务端解析。
查看>>
可左右滑动的选项卡
查看>>
缓存服务的更新策略有哪些?
查看>>
php, nginx高并发优化
查看>>
python内置魔法方法
查看>>
Python自学DAY03
查看>>