社区
C#
帖子详情
散分200,欢迎大家讨论,类的静态方法和实例方法有什么区别,各有什么优劣
freeboy827
2008-09-25 09:34:50
RT
...全文
484
81
打赏
收藏
散分200,欢迎大家讨论,类的静态方法和实例方法有什么区别,各有什么优劣
RT
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
81 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zuoyqren
2011-11-08
打赏
举报
回复
[Quote=引用 42 楼 viena 的回复:]
引用 34 楼 XPingguo 的回复:
静态方法调用后常驻于内存,不释放内存
实例方法,new 了对象后才占内存,会释放内存
我一般处理简单的,独立的东西用静态方法
实例方法,一般处理复杂点的,和类中的其它方法有偶合
静态方法用起来方便,不用 new 对象
好多人在误导!
new 了对象后才占内存的是对象本身的数据!
会释放内存的也是数据而不是方法!
数据在……
[/Quote]
同意在中说方法
alexhuan
2008-09-28
打赏
举报
回复
主要还是内存分配上的区别吧。
leecopper
2008-09-28
打赏
举报
回复
帮顶
treesky
2008-09-28
打赏
举报
回复
静态方法在程序执行的时候就会被加载到内存中
实例方法是在调用创建实例的时候才会分配内存空间。
从这里看出二者之间在占用 内存上的差别le !
顺便国庆快乐!
jx218
2008-09-28
打赏
举报
回复
[Quote=引用 6 楼 nightmare23 的回复:]
静态方法不需要类型实例就可以调用。
实例方法,必须要通过实例来调用。
[/Quote]
如果你一个页面中,要使用很多次的调用一个类里面的方法的话..这个时候.要是用静态方法,内存上就要比只实例化一个的要多多了..
jacklee_008
2008-09-28
打赏
举报
回复
学习
GhostAdai
2008-09-25
打赏
举报
回复
路过接分!
puleezi
2008-09-25
打赏
举报
回复
路过
baidu636
2008-09-25
打赏
举报
回复
fds
taolanjian
2008-09-25
打赏
举报
回复
刚学,顶!
diffmaker
2008-09-25
打赏
举报
回复
静态的不需实例化,通过类直接调用
动态的必须实例化,通过类的实例来调用
对于常见的与实例无关的函数或方法,可以创建一个静态类,使用起来方便一些
doc123
2008-09-25
打赏
举报
回复
静态变量和动态变量主要
区别
在
内存
使用上,
动态变量是不断分配内存的。
zhujiechang
2008-09-25
打赏
举报
回复
静态装入内存不会释放,实例会有生存期
再见品月
2008-09-25
打赏
举报
回复
[Quote=引用 42 楼 viena 的回复:]
引用 34 楼 XPingguo 的回复:
静态方法调用后常驻于内存,不释放内存
实例方法,new 了对象后才占内存,会释放内存
我一般处理简单的,独立的东西用静态方法
实例方法,一般处理复杂点的,和类中的其它方法有偶合
静态方法用起来方便,不用 new 对象
好多人在误导!
new 了对象后才占内存的是对象本身的数据!
会释放内存的也是数据而不是方法!
数据在数据区,每个对象都有自己的数据,可以有很多分copy;
而实例…
[/Quote]
學習。。。其他的誤人子弟
killer_liqiao
2008-09-25
打赏
举报
回复
jf
A1027
2008-09-25
打赏
举报
回复
静态方法通常当作工具方法使用.
mawering
2008-09-25
打赏
举报
回复
学习一下!
assky124
2008-09-25
打赏
举报
回复
静态的的不拉屎也要先占个茅坑(内存)
动态的有 的时候才会去。
navysong
2008-09-25
打赏
举报
回复
同意42楼的说法。
1、可以先搞清楚 堆栈、堆的概念再讨论
Method不管是静态、实例都只有一份,加载、编译都一致,何来性能、内存
静态、实例方法如果你去看MSIL的话 区别是一个有 this调用、一个无this
2、主要看使用时机比较好:
比如,你使用双检琐的 Singleten 模式,那你需要使用静态的Object来防止多线程冲突
还有你的一个变量是需要达到各实例累计目的,以可以作为Static的
3、一般情况不设计静态方法,静态方法常常是与类无关的。这点也很难讲清,可自己找到自己的使用状况。
我提两条自己的想法,设计静态方法时
a、与具体对象无关的(这个不好判定),如.NET 的Math里定义
的运算方法
b、多处使用且与对象Field无关的。
(静态Medthod只能直接操控静态变量,而静态变量在多线程环境下会引发冲突)
Skyleo_liu
2008-09-25
打赏
举报
回复
[Quote=引用 6 楼 nightmare23 的回复:]
静态方法不需要类型实例就可以调用。
实例方法,必须要通过实例来调用。
[/Quote]相当经典.
加载更多回复(61)
在C++中模拟委托事件
方法
的例子免资源分
代码是文章《在C++中模拟委托事件
方法
》的例子,文章地址为http://blog.csdn.net/gogogo/article/details/6996290,详述...并比较了各种
方法
的
优劣
及应用的场合,修正了事件链模式中的一些小bug,并把资源变为免资源分
静态场中插值函数条件的研究* (
200
5年)
将质点形式SPH方程应用于静态场,被估质点既可以为初设质点,亦可位于初设...最后,利用一个函数的估值
实例
,证实了3个条件可以用于评价插值函数的
优劣
。分析结果表明,Gaussian和五次样条插值函数是最佳的插值函数。
朱老师C++第2部分第5-C++的静态
类
和静态成员
《朱老师带你学C++》属于系列课程《朱有鹏老师热门编程语言全解》的第一部分,主要针对C++语言完全学习。本课程可以看做是嵌入式linux核心课程中《C语言高 级专题》课程的延续,在学好了C语言前提下继续深度学习C++...
Java基础之
静态
方法
和
实例
方法
的
区别
静态
方法
和
实例
方法
的
区别
主要体现在两个方面: 在外部调用
静态
方法
的时候,可以用
类
名.
方法
名进行调用,不必新创建一个对象。当然也可以创建一个对象,通过对象名.
方法
名进行调用,不过这种
方法
并不推荐。而
实例
...
创建bean有三种方式,创建静态工厂,
实例
工厂,构造器,这三种有什么
区别
创建bean有三种方式,创建静态工厂,
实例
工厂,构造器,这三种有什么
区别
C#
110,534
社区成员
642,575
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章