黑马程序员--c#的学习小结一
来源:互联网 发布:社会工程学数据库查询 编辑:程序博客网 时间:2024/06/01 22:51
------------------ Windows Phones 7手机开发、.Net培训、期待与您交流! ----------------------
1.面向对象的思想:继承 多态 封装。
封装:用抽象的数据类型将数据和基于数据的操作封装在一起,数据被保护在抽象数据类型内部。
继承:子类拥有父类的所有数据和操作。
多态:一个程序中同名的不同方法共存的情况。
有两种形式的多态– 重载与重写。
2. 什么是重载?override与重载的区别
重载是指针对所继承下来到方法,重新设计其处理方式,为将来原本处理方式覆盖过去。
在派生类要覆盖的方法前加override修饰,而基类的同名方法前加virtual修饰。这样就能实现多态。多态指一个程序中同名的不同方法共存的情况。 有两种形式的多态– 重载与重写。
3. 值类型和引用类型的区别?
值类型的变量本身包含他们的数据,而引用类型的变量包含的是指向包含数据的内存块的引用或叫句柄。
值类型变量存储在堆栈。每个程序在执行时都有自己的堆栈,其他程序不能访问。
引用类型存储在堆。引用类型存贮实际数据的引用值的地址。
C#中的引用类型有4种(类、代表、数组、接口)
4. C#中的接口和类有什么异同。
什么是类?类可以这么理解.类就是功能的集合.类也可以看做是实现一种功能的集合或者方法..接口的概念:什么是接口?接口可以理解为,对类的规定,对类的约束,甚至对整个项目的约束. 种模版,定义了对象必须实现的方法,其目的就是让这些方法可以作为接口实例被引用。接口不能被实例化。接口是负责功能的定义,项目中通过接口来规范类,操作类以及抽象类的概念!而类是负责功能的具体实现!在类中也有抽象类的定义,抽象类与接口的区别在于:抽象类是一个不完全的类,类里面有抽象的方法,属性,也可以有具体的方法和属性,需要进一步的专业化。但接口是一个行为的规范,里面的所有东西都是抽象的!一个类只可以继承一个基类也就是父类,但可以实现多个接口
5.类和结构的区别?
. 值类型与引用类型
结构是值类型:值类型在堆栈上分配地址
类是引用类型:引用类型在堆上分配地址
继承性
结构:不能从另外一个结构或者类继承,本身也不能被继承,虽然没有明确sealed声明,可结构是隐式的sealed .
类:完全可扩展的,除非显式声明sealed, 否则类可以继承其他类和接口,自身也能被继承 。
注:虽然结构不能被继承 ,可结构能够继承接口,方法和类继承接口一样 。
1.实现一个冒泡排序算法?
public void BubbleSort(int[] R)
{
int i,j,temp; //交换标志
bool exchange;
for(i=0; i<R.Length; i++) //最多做R.Length-1趟排序
{
exchange=false; //本趟排序开始前,交换标志应为假
for(j=R.Length-2; j>=i; j--)
{
if(R[j+1]<R[j]) //交换条件
{
temp=R[j+1];
R[j+1]=R[j];
R[j]=temp;
exchange=true; //发生了交换,故将交换标志置为真
}
}
if(!exchange) //本趟排序未发生交换,提前终止算法
{
break;
}
}
}
2. 九九乘法表
static void Main(string[] args)
{ for(int i=1; i<10; i++)
{ for(int j=1; j<= i; j++)
{ int s = i * j;
Console.Write(j.ToString() + "×" + i.ToString() + "=" + s.ToString() + " ");
}
Console.WriteLine("");
}
Console.ReadLine();
}
------------------ Windows Phones 7手机开发、.Net培训、期待与您交流! ----------------------
- 黑马程序员--c#的学习小结一
- 黑马程序员--C#基础知识小结(一)
- 黑马程序员之C#基础小结一
- 黑马程序员之C#学习笔记:面向对象小结
- 黑马程序员--C#中字符串的一些知识小结
- 黑马程序员--学习winForm小结
- 黑马程序员--学习HTML小结
- 黑马程序员_JavaScript学习小结
- 黑马程序员 C#学习笔记⑦ 文件系统数据一FileStream
- 黑马程序员--C#基础知识小结(三)
- 黑马程序员-c#基础知识小结
- 黑马程序员--C#构造函数小结
- 黑马程序员-OC学习日记四之继承的小结
- 黑马程序员--Java基础小结(一)
- 黑马程序员-C语言学习日记一之基本运算符学习小结
- 黑马程序员 C#学习1
- 黑马程序员c#学习2
- 黑马程序员c#学习3
- js实现页面跳转的几种方式
- Project Server与Exchange任务协同(下)
- 黑马程序员_张孝祥高级技术java5.0新特性
- 树形控件 CTreeCtrl CViewTree
- “44B0芯片不支持用JLINK下载程序” 到底是不是真的?
- 黑马程序员--c#的学习小结一
- 《Linux设备驱动开发详解》第3版现隆重征求读者创作意见
- 日记格式
- 微软业务生产力平台基础架构优化(BPIO)之企业项目管理(EPM)解决方案
- Dom4j selectnodes报错Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/JaxenExcepti
- dom4j中selectNodes无法获得节点
- 异常
- C#十进制 转换成二进制十六进制 八进制
- com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'title' at row 1