想请问下,new 实例化对象的时候,是放在程序外部好还是内部好?哪种更节省内存开销,对优化系统系能哪种更好?比如下面是new在程序外部:MyClass1 m = new MyClass1();public string OutStr()
{
return m.Str1();
}
下面是new在程序内部:public string OutStr()
{
MyClass1 m = new MyClass1();
return m.Str1();
}
请问各位朋友,哪种更节省内存开销,对优化系统系能哪种更好?谢谢。
{
return m.Str1();
}
下面是new在程序内部:public string OutStr()
{
MyClass1 m = new MyClass1();
return m.Str1();
}
请问各位朋友,哪种更节省内存开销,对优化系统系能哪种更好?谢谢。
类是具有相同属性,或者方法的集合。类中方法的调用一般都会使用相同的外部类方法
节省内存的角度:new在程序内部
1、面向对象“封装特性”,使得类被调用时 一般只会使用1个方法
2、方法调用完毕,实例化的类会被自动回收
最里层程序结束后,系统会自动回收。
这也是好的编程习惯!
第二个的资源是函数运行完后回收类具体再什么地方实例化看具体情况而定
应该new一下需要一定的时间的,如果函数运用很频繁的话建议把类在全局实例化
MyClass1 m = new MyClass1();public string OutStr()
{
return m.Str1();
}第一种是在你当前这个类(指this的这个类,不是MyClass1)的构造函数执行前就先创建的(即new),第二种是在调用当前类的实例方法OutStr()的时候创建的。仔细区别这种不同。
{
m = new MyClass1(); return m.Str1();
}