.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 .委托,接口
...