List returnValues = new ArrayList();
与
ArrayList returnValues = new ArrayList();的具体区别在那里呀?
与
ArrayList returnValues = new ArrayList();的具体区别在那里呀?
解决方案 »
- 请教一个C# 委托方面的问题
- 【请教】哪位了解ASP.Net的控件SqlDataSource,其中的Filter功能使用时候有些问题
- 关闭窗体的时候启动线程如何实现
- 为什么我的.net装上之后,不能创建C#的asp.net project?
- 我用c#写了一个win32的桌面程序,要连接到数据库,请问连接字符串保存在哪里好?进来有分!
- 请问:c#中datagrid连接数据库以后,字段中均显示null
- 这个正则表达式错在哪里?
- 大虾们。。近来看看。。帮帮我。。谢谢
- 这里有到面试题怎么理解?
- C#控制台应用程序怎样才能不自动完成?
- DataView
- 找遍了CSDN,用百度搜索也没有找到答案——UP有分
谢谢。后者一般被命名为CreateXXXX。在三种情况下适用:一、所获得的对象不仅仅与所传入的参数有关,为了明确语义,不用构造函数。二、对象的构造函数在很多时候可能导致失败,为了避开异常处理提高效率,不使用构造函数,例如构造WebRequest。三、依据参数的不同,所构造的对象是不同的派生类对象。这就是常说的类工厂了,例如WebRequest的构造也是工厂模式的,如果协议是Http,则构造的对象就是HttpWebRequest了。
ClassName name1 = new ClassName();
ClassName name2 = ClassNameMethod();
都是得到 类ClassName 的一个实例对象的引用,只是获得的途径不同而已;
就如:
你想去北京,你可以自己走过去;也可以坐火车过去把,只是到达的方式不同。在何种情况下用他们,要视实际情况而定。
{
}
class B
{
public static A GetA()
{
return new A();
}
}
A a=new A(); 实例化类A关返回类A的引用给a
A a=B.GetA(); 通过方法GetA();实例化A,并返回A的引用给a
一般来说一样的但是用方法实例化用他自已的用处,比较典型的就是单体模式
class A
{
}
class B
{
private A a;
public static A GetA()
{
if(a==null){
a=new A();
return a;
}
else
return a;
}
}
通过GetA()方法来返回A的引用,确保只有一个类A被实例化