1).net 里面的三层结构.2).NET内值对象. 3)一个页面调用另一个页面的状态有几种方法.4)session和application有什么区别.5)如何让一个类不允许被new出来......还有几个,他人不在了,晕倒,,请高手认真解答一下!!
解决方案 »
- 范型
- 在用visual studio 2008 编写asp.net程序时有没有从设计视图进入源视图或者反过来的快捷键?
- 获取客户端的ip并与ip库判断出来自何处?谁有源码.给个.谢谢了!
- .net 创建IIS虚拟目录怎么解决权限问题
- 大型的新闻系统架构思想
- 字符串处理问题(逗号分割)
- 一个基础问题,像镶嵌在类或一些属性开头的[Required(ErrorMessage="required")],这是什么语法
- insert不能写入数据库,不报错,求救
- web.config设置的问题
- 谁有VS2005的下载地址给我一个谢谢哈
- c# webform.cs打包成dll文件后,能反编译吗?
- Web图形显示问题
构造私有,或是虚拟的
第一层: form 或 web form
第二层: ADO.net
第三层: 数据库4)session和application有什么区别
session是用户级,是局部.
application 是系统级的,是全局的,即整个系统过程中都可以访问Application中的变量.
5)如何让一个类不允许被new出来.
将类申明为abstract类型.
public class LogWriter{ //申明一个静态的变量,类型为类本身 private static LogWriter _instance = null; //将类的构造函数私有化,使得这个类不可以被外界创建 private LogWriter() { } //提供静态的方法,创建类的实例 public static LogWriter GetInstance() { if (_instance == null) { _instance = new LogWriter(); } return _instance; } //下面实现类的其他功能 //....}
调用者不可以通过new的形式得到Singleton的实例,调用的例子如下:LogWriter log = LogWriter.GetInstance();log.Debug("hello world");
server.transfer
window.open
window.show
Response.Redirect还有...就不知道了
抽象类
有很多人都以为string(字符串)和decimal(货币)都是值类型,因为它们都是单独保存内容的。
实际上不是,string是一个引用类型,他是对一个char数组进行操作的类型,并不是值类型。而decimal类型更加不是,它为了表示高精度的货币数据,使用了3个int类型作为构造器,虽然C#里面有关键字直接支持,但是它还是引用类型。不严格的说,我把所有放在堆栈里的内容统统称为值类型,包括对象引用,如
// 在方法A中建立一个DataSet对象,其引用名称是ds
public DataSet A()
{
DataSet ds = new DataSet();
return ds;
}在方法A里面,我把ds称为值类型,这个ds是放在堆栈里面的,他保存了放在托管堆里的一个DataSet对象的地址引用。当方法执行结束,A方法返回的是一个地址,这个地址是指向托管堆中的那个DataSet,这时,变量(值类型)的作用域结束,从堆栈里面自动被清除。public void B()
{
DataSet d = A();
}在方法B中,在堆栈中建立了一个新的引用变量,他接受方法A中传递的地址及类型数据,故我们可以对在方法A中建立的DataSet继续使用。B方法运行结束,名称为d的变量作用域结束,从堆栈上自动消失。
所以,不严格的讲,我把引用类型的变量也称为值类型。
数据访问层,业务层,表示层(可能叫法上有些不同)
2).NET内值对象.
是内置对象还是内值对象阿??
3)一个页面调用另一个页面的状态有几种方法.
调用另一页面的什么?如果是方法可以声明为public或者public static的方法或变量,或通过设置获取属性。
4)session和application有什么区别.
简单例子,application(一个应用例如你的站点)是一个聊天室,session(访问站点的一个活动用户)就是里面的一个人,
5)如何让一个类不允许被new出来.
public abstract class 类名 : 父类名
UI界面层,Business(业务层),DataAccess(数据访问层)2).NET内值对象.
.NET的公共类型系统CTS可以分为两大类,引用类型和值类型,引用类型分配在堆中,值类型分配在栈中;
对于值类型的变量或常量我们一般不称之为对象,题目竟然将其称做值对象,可见出题的人本身就概念不清;设计上,对象的概念是伴随类而出现的,类的实例我们才称之为对象.
3)一个页面调用另一个页面的状态有几种方法.
一个页面调用另一个页面的状态???不懂. 4)session和application有什么区别.
Session是会话,多线程;application是全局唯一的,对它的操作牵扯到同步问题.5)如何让一个类不允许被new出来.
把类的构造函数声明为私有,同时可以提供一个public static 类名 GetInstance()函数来构造类的实例.
你鸭Application不关机你是不死呀!
Session这私说完话就跑了!
MVC三层保护,绝不渗漏!
三种方法调用隔壁女孩过来!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
你们看懂了么?
打开VS.net,企业级模板,你能看见有3个模板分别叫“数据访问”“业务规则”“用户界面”,这就是那3层了,数据层、业务逻辑层、用户界面层。2).NET内 值对象.
值对象????值是对象么?好像对象是引用的。。那么值是引用的。。那么我晕了。。
3)一个页面调用另一个页面的状态有几种方法.
6种。(服务器端和客户端全算上)4)session和application有什么区别.
上面阿拉丁说的很好,呵呵
你鸭Application不关机你是不死呀!(指关IIS,不是关机器)
Session这私说完话就跑了! A好像是所有用户一起用,S是大家都有自己一个。
5)如何让一个类不允许被new出来.
不知道
而且都是一般的概念性问题,只要有1年web开发经验的都应该没什么问题.
一、将该类声明为abstract(抽象)类,因为abstract类是不能实例化的。
二、将类的构造函数都声明为protected或private ,因为没有public构造函数的类,类的外部是不能直接new的,参考Singleton模式。
三、只要类中的存在有abstract的方法,因为有abstract的方法,不管有无将类声明为abstract,都将该类视为abstract。另外,如果你想让这个类,只能在该类的包(Assembly或者说是库)内可以直接new , 但包外不许new,那可以将构造函数声明为internal。
而abstract中就一定不可以。
在 abstract里就不可以new 了
第一层: 数据层(DataAceess)
第二层: 业务逻辑层 (Bussiness)
第三层: 用户界面层(UI)4)session和application有什么区别
session是用户级,是局部.
application 是系统级的,是全局的,即整个系统过程中都可以访问Application中的变量.
5)如何让一个类不允许被new出来.
将类构造为私有,或是虚拟的类型.