怎么理解C#中方法,重载,构造函数,传值、传引用
一、怎么理解C#中方法,重载,构造函数,传值、传引用
方法重载:
public int Show(int a , int b)
{
return a+b;
}
public double Show(double a,double b)
{
return a+b;
}
方法名一样,参数的个数或者参数的类型不同
同样调用方法,传值
Show(3,3); //方法自动找到Show(int a ,int b)
Show(1.5,5.5) //自动调用Show方法的double参数
方法重载好处就是用于实现一个操作,根据参数不同,运算方式也不同
构造函数
类有自己默认的构造函数,这个可以不用写
但一旦写构造函数,类自己默认的就会不起作用
通常会写2个以上的构造函数,把类本身自带的构造函数方法重载
public 类名() {} //空构造函数,类自带的
public 类名(参数1,参数2,……) //用户指定,用于初始化数据
构造函数通常都是重载的,在生成对象时,可以省去多行垃圾代码
Student s=new Student();
s.Name=张三;
s.Age=18;
这个是系统默认的构造函数,如果写上参数的话
Student s=new Student(张三,18);
这样就能省去下面的内容,是不是很方便呢?
值类型包括:基本数据类型int,long,float,char,bool 枚举类型enum 结构类型struct
引用类型包括:类:基类System.Object 字符串:string 自定义类:class
接口: interface 和数组int[], string[]
值类型是传递值,引用传递的是地址
想让方法中的值类型转换为引用时,参数前面加上ref即可,当然调用时也许ref 参数
二、交换机工作原理到底是什么?
交换机中有一张MAC地址转发表,记录了MAC地址和交换机端口的对应关系,一个端口可以对应多个MAC地址,但一个MAC地址不能对应多个端口。这就使得交换机具备多级级联的能力,每个交换机在转发报文的时候只需要知道这个目的MAC可以从我的哪一个端口到达就行了,然后就把帧往这个端口发,至于后面的设备怎么处理他并不关心。就这样一级一级转发,知道电脑的网卡实际连接的交换机把帧发到网卡以后,网卡一看目的MAC就是自己,然后就解封装,交由三层协议栈进行处理。
以上是转发表和转发的过程,那么另外一个关键的问题是交换机的这张MAC地址表是怎么建立的,部分是根据主动发起请求的报文,把源MAC和从哪一个端口收到的建立对应,另一部分在收到报文的时候如果MAC表里还没有这个目的MAC,那么就在除了收到这个报文的端口以外的其他端口进行一次洪泛,等待目的MAC的终端响应。
三、简述网络交换机工作原理
1.交换机根据收到数据帧中的源MAC地址建立该地址同交换机端口的映射,并将其写入MAC地址表中。
2.交换机将数据帧中的目的MAC地址同已建立的MAC地址表进行比较,以决定由哪个端口进行转发。
3.如数据帧中的目的MAC地址不在MAC地址表中,则向所有端口转发。这一过程称为泛洪(flood)。
4.广播帧和组播帧向所有的端口转发。
四、java方法重载中,参数排列的顺序算不算方法的重载?
当然不算,改变顺序并不影响结果
上一篇:菏泽搬家公司哪家最好?
下一篇:wOw,BUG改名问题
- 电玩城,射击类游戏,丛林探索,丛林探险,通关?[12-08]
- 770 物联网[12-08]
- 陈意涵围巾[12-08]
- dota2游戏无法进入?[12-08]
- 经常玩游戏怎样组装机子比较好?[12-08]
- 拓展训练游戏翻牌诀窍?[12-08]
- 威斯汀游戏故事简介[12-08]
- DOTA2凤凰出A帐是什么效果?[12-08]
- 部落冲突九本援军雷龙怎么配兵?[12-08]
- 乐高墙面游戏材料分类?[12-08]
-
绿茵信仰
2.9 Android
2024-04-13
-
NBA篮球大师
5 Android
2024-04-13
-
艾特足球
0.26 Android
2024-04-13
-
豪门足球风云
1 Android
2024-04-13
-
3D极限摩托
2.4 Android
2024-04-13
-
冠军台球
2 Android
2024-04-13
-
飞羽青春
1.1 Android
2024-04-13
-
超凡台球
1 Android
2024-04-13
-
最佳11人
5 Android
2024-04-13
-
网球传奇
2.23 Android
2024-04-13
-
狂奔的卡车
1.1 Android
2024-04-13
-
高尔夫挑战赛
1 Android
2024-04-13