ASPNET的编程语言
现在ASPNET支持的开发语言包括VBNETC#NETJSCRIPTNETVC++NET以及其它NET Framework所支持的语言这里我向大家介绍最常用的VBNET和C#NET
Visual BasicNET
Visual BasicNET是Visual Basic在NET中的最新版本它和VB 比较起来增加了许多新的或者改进的特性――例如继承接口重载(Overloading)这些使它成为一个强大的面向对象的语言
Visual BasicNET最大的新特征就是其利用了CLS(Common Language Specification公共语言规范)和CLR(Common Language Runtime公共语言运行时)因为Visual BasicNET遵从CLS这就使得任何遵从CLS的语言都可以使用你用Visual BasicNET编写的类对象和组件同样的Visual BasicNET开发人员也可以自由使用其它遵从CLS的语言编写的类对象和组件而不用担心语言之间的差异
Visual BasicNET支持许多新的面向对象的特性例如继承重载接口构造体等等而且还包括异常处理代表和一些新的数据类型
)继承性
Visual BasicNET允许你定义基类派生类可以继承基类的属性和方法你也可以用派生类的方法来覆盖基类的方法VBNET中的所有类默认情况下是可以继承的如你可以在一个表单中继承现有的表单中的类因为你所设计的表单本身就是一个类
)异常处理
VBNET支持结构化的异常处理你可以用下面的代码来捕捉异常
Try
Try block
Catch e As ClassLoadException
Catch block
Finally
Finally block
End Try
在Try块中放上你的代码当发生异常时程序会自动跳到Catch块在这里我们可以输出错误信息或者给用户一个友好的提示而不会导致程序崩溃在Finally部分我们可以用来释放一些系统资源如数据库连结等
)重载(Overloading)
使用重载你可以让允许具有不同的数据类型的方法属性或者过程使用相同的名字如下面代码所示
Overloads Sub Display(ByVal theChar As Char)
Add code that displays Char data
End Sub
Overloads Sub Display(ByVal theInteger As Integer)
Add code that displays Integer data
End Sub
Overloads Sub Display(ByVal theDouble As Double)
Add code that displays Double data
End Sub
当向Display方法传入不同的参数时它会运行不同的过程这在我们使用不同的数据类型时是非常有用的
)接口
接口和类一样会定义方法和属性但是和类所不同的是接口并不提供方法的实现你可以在继承接口的类中去编写实现
从上面这些新的特性我们可以看出VBNET已经完全变成了一门全新的语言它还提供了对多线程的支持等等由于其变化之大许多VB的程序员也开始迷惑是学习VBNET还是学习C#孰优孰劣的争论现在还在进行中可以肯定的是如果你能掌握NET Framework使用那种语言已经变得不再重要了
C#NET
C#语言是微软公司针对Net平台开发的一种全新的编程语言尽管C#象是C和C++语言的升级语言但是他不象他的前身那样C#是一个完全面相对象的开发语言它既有Visual Basic的快速开发的特点又具有C++的强大的功能它的风格类似与CC++和Java如果你是一个CC++或者Java的程序员你会发现你可以很快的使用C#进行开发和VBNET一样C#可以利用公共语言运行时给我们带来的各种好处例如语言的交互性垃圾回收机制增强的安全性能以及版本兼容
)类
一个类可以从另一个类继承在C#中类是不可以继承多个类的但是它可以继承多个接口
下面我们给大家建立一个类:
public class person
{
//在这里面可以增加属性和方法
}
) 属性
使用属性我们可以访问类中的数据成员我们现在给上面的person类增加一个姓名和年龄的属性
public class person
{
private string _Name;
private int _Age;
public string Name
{
get
{
return _Name;
}
set
{
_Name=value;
}
}
public int Age
{
get
{
return _Age;
}
set
{
_Age=value;
}
}
}
) 方法
方法是类中执行运算或者其它行为的成员我们现在给上面的类增加一个ToString()的方法
public class person
{
private string _Name;
private int _Age;
public person()
{
//
// TODO: Add constructor logic here
//
}
public string Name
{
get
{
return _Name;
}
set
{
_Name=value;
}
}
public int Age
{
get
{
return _Age;
}
set
{
_Age=value;
}
}
public string ToString()
{
return 姓名+_name+年龄+_Age;
}
}
和VBNET一样C#也提供了继承接口等其它面向对象的特性