ASP.NET教程之C#接口和笼统类手艺特性浅析仓酷云
我有个同学,他是搞net网页编程的,他给我说“net网页编程不是效率低,而是速度慢。”,我不是搞net网页编程的,我实在想不透这句话的含义,难道执行速度不就是效率低吗?难道执行速度慢还成效率高了?1、C#笼统类:C#笼统类是特别的类,只是不克不及被实例化;除此之外,具有类的其他特征;主要的是笼统类能够包含笼统办法,这是一般类所不克不及的。笼统办法只能声明于笼统类中,且不包括任何完成,派生类必需掩盖它们。别的,C#笼统类能够派生自一个笼统类,能够掩盖基类的笼统办法也能够不掩盖,假如不掩盖,则其派生类必需掩盖它们。
2、C#接口:
C#接口是援用范例的,相似于类,和笼统类的类似的地方有三点:
1、不克不及实例化;
2、包括未完成的办法声明;
3、派生类必需完成未完成的办法,笼统类是笼统办法,接口则是一切成员(不但是办法包含其他成员);
别的,C#接口有以下特征:
接口除能够包括办法以外,还能够包括属性、索引器、事务,并且这些成员都被界说为私有的。除此以外,不克不及包括任何其他的成员,比方:常量、域、机关函数、析构函数、静态成员。一个类能够间接承继多个接口,但只能间接承继一个类(包含笼统类)。
3、C#笼统类和接口的区分:
1.类是对对象的笼统,能够把笼统类了解为把类看成对象,笼统成的类叫做笼统类.而接口只是一个举动的标准或划定,微软的自界说接口老是后带able字段,证实其是表述一类类“我能做。。。”.笼统类更多的是界说在一系列严密相干的类间,而接口年夜多半是干系松散但都完成某一功效的类中.
2.接口基础上不具有承继的任何详细特性,它仅仅答应了可以挪用的办法;
3.一个类一次能够完成多少个接口,可是只能扩大一个父类
4.接口能够用于撑持回调,而承继其实不具有这个特性.
5.笼统类不克不及被密封。
6.笼统类完成的详细办法默许为虚的,但完成接口的类中的接口办法却默许为非虚的,固然您也能够声明为虚的.
7.(接口)与非笼统类相似,笼统类也必需为在该类的基类列表中列出的接口的一切成员供应它本人的完成。可是,同意笼统类将接口办法映照到笼统办法上。
8.笼统类完成了oop中的一个准绳,把可变的与不成变的分别。笼统类和接口就是界说为不成变的,而把可变的坐位子类往完成。
9.好的接口界说应当是具有专注功效性的,而不是多功效的,不然形成接口净化。假如一个类只是完成了这个接口的中一个功效,而不能不往完成接口中的其他办法,就叫接口净化。
有理由相信是能提供更出色的性能。很多平台无法支持复杂的编译器,因此需要二次编译来减少本地编译器的复杂度。当然可能做不到net网页编程编译器那么简易。 当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。 这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。 ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象。 关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。 大哥拜托,Java在95年就出来了,微软垄断个妹啊,服务器市场微软完全是后后来者,当年都是Unix的市场,现在被WindowsServer和Linux抢下大片,包括数据库也一样。 ASP.net的速度是ASP不能比拟的。ASP.net是编译语言,所以,当第一次加载的时候,它会把所有的程序进行编译(其中包括worker进程,还有对语法进行编译,形成一个程序集),当程序编译后,执行速度几乎为0。 在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数。 ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象。 Servlet却在响应第一个请求的时候被载入,一旦Servlet被载入,便处于已执行状态。对于以后其他用户的请求,它并不打开进程,而是打开一个线程(Thread),将结果发送给客户。由于线程与线程之间可以通过生成自己的父线程(ParentThread)来实现资源共享,这样就减轻了服务器的负担,所以,JavaServlet可以用来做大规模的应用服务。 碰到复杂点的问题都不知道能不能解决,现在有点实力的公司都选择自已在开源的基础上做开发。但没听说过有人在IIS上做改进的,windows、sqlserver集群方面的应用也很少见。 提供基于组件、事件驱动的可编程网络表单,大大简化了编程。还可以用ASP.NET建立网络服务。 是指转换后的Servlet程序代码的行数。这给调试代码带来一定困难。所以,在排除错误时,可以采取分段排除的方法(在可能出错的代码前后输出一些字符串,用字符串是否被输出来确定代码段从哪里开始出错)。
页:
[1]