C# 面试图解2

.net常用类库

点击打开链接

冒泡排序

int[ ]  nums={6,5,10,5,3};
 for( int i =0; i<num.Length-1; i++)
{
 for(int j=0; j<num.Length-1-i; j++)
{
 if(num[j]<num[j+1])
{
 int temp=num[j];
num[j]=num[j+1];
num[j+1]=temp;
}

}
}

 for(int i =0;i<num.Length;i++)
{
 console.WriteLine(num[i]);
}

 一列数的规则如下: 1、1、2、3、5、8、13、21、34......  求第30位数是多少, 用递归算法实现。 至少遇到5次

 public class mainClass
{
 public static void Main()
{
 console.WriteLine(Foo(30));
}
 public static int Foo( int i)
{

 if( i<0)
{
 return 0;
 
} else if( i>0&& i<2)
 return 1;
 else
 return Foo(i-1)+ Foo(i-2);
}

}


 一些概念的面试题

多态的定义

通过继承,一个类可以用作多种类型:可以用作它自己的类型、任何基类型,或者在实现接口时用作任何接口类型。这称为多态性

多态是父类使用子类的方法

1 支持运行时多态,通过重载实现

2编译时的多态性,通过虚成员实现

 实现多态的方式: 抽象类,基础实现 接口实现


 重写 ,重载

重写是指重写基类的方法,在基类中的方法必须有修饰符virtual,而在子类的方法中必须指明override,

         基类的方法相当于被覆盖掉了

重载用于在给定了参数列表和一组候选函数成员的情况下,选择一个最佳函数成员来实施调用,

          子类中会将原方法覆盖,实现自身的要求.

I.方法名必须相同

II.参数列表必须不相同,与参数列表的顺序无关

III.返回值类型可以不相同 


匿名函数

 实现的两种方式

Lambda表达式

匿名方法表达式


 值类型和引用类型

 都继承object

值类型是直接存储数据,byte,short,int,long,float,double,decimal,char,bool 和 struct 统称为值类型,也是堆上

 引用类型持有的是数据的引用,(地址),在堆里面,,string 和 class统称为引用类型,包含null,可以派生新的类型,数组,object .委托,接口

...

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值