Topic: 请教一个工厂模式的问题

  Print this page

1.请教一个工厂模式的问题 Copy to clipboard
Posted by: bluedest
Posted on: 2004-08-25 15:46

在C语言里,如果把某个函数里产生的对像的指针赋给函数外的其他指针,将会是危险的,因为局部变量的生命周期通常很短。
而在java里,动不动就是工厂模式,就是什么时候要用到一个类实例时,可以用另外某个类的生产出自己需要的这个类,再把引用指向这个类就可以使用。
我的疑问是,这种工厂模式与C有什么不同?

2.Re:请教一个工厂模式的问题 [Re: bluedest] Copy to clipboard
Posted by: hitaco
Posted on: 2004-08-25 22:15

can leverage the OO feature: polymorphism, which C language does not provide.

3.Re:请教一个工厂模式的问题 [Re: bluedest] Copy to clipboard
Posted by: NoLimited
Posted on: 2004-09-06 22:15

首先在C语言里不会产生对象,那是C++,而在C++里的某个函数产生的对象,将指针赋给外边也没什么不妥。这一部分,你好象没说明白。
而在Java里引用对象,只要存在这个对象的引用,这个对象就不会被释放。

4.Re:请教一个工厂模式的问题 [Re: bluedest] Copy to clipboard
Posted by: dennisjl
Posted on: 2004-09-24 14:04

"动不动就是工厂模式"
其实工厂模式也不是随便使用的, 在需要的时候才能用。
JDK中的工厂模式都是有需要的, 这个可以去体会一下。

5.Re:请教一个工厂模式的问题 [Re: bluedest] Copy to clipboard
Posted by: tomch
Posted on: 2004-09-26 15:26

工厂模式的作用的就是生产对象,如果你用oop,用工厂就可以让使用对象的客户端与与对象解偶;原本我们都是用new;现在用工厂产生对象;当然现在还有
ico等新的方法;
工厂模式是oop中对如何创建对象这个问题的一种解决方案。

6.Re:请教一个工厂模式的问题 [Re: bluedest] Copy to clipboard
Posted by: 主管
Posted on: 2004-11-05 15:05

楼猪问的是不是堆和堆栈管理对象方式的不同问题
可以理解成c的局部变量也是放在堆栈里的,而java的类是在堆里面管理的,有gc来管理释放。


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923