黑马程序员技术交流社区

标题: 静态方法和动态方法的区别 [打印本页]

作者: 郗振龙    时间: 2012-5-3 10:22
标题: 静态方法和动态方法的区别
静态方法和动态方法的区别
作者: 苏腾    时间: 2012-5-3 10:39
http://hi.baidu.com/116389199/blog/item/8f12dfcf4521100493457eb7.html
有时间可以看看
作者: 张博    时间: 2012-5-3 11:25
静态方法是在内存对于类只存在一个,所以调用的时候可以用 类.静态方法(),而非静态方法是跟随对象的,每次New了一个对象,就会存在这样一个方法,调用的时候必须得先实例化类,然后用对象调用
作者: 胡博    时间: 2012-5-5 12:40
是静态方法和动态方法的区别,不是静态方法和实例方法的区别。
这里讲的静态方法是相对于动态的方法而论的。
静态方法包括(静态方法、实例方法);
而动态的方法是通过 反射 而得到的。
在程序运行时产生。不是在编译时产生,在IL之前。
作者: 邬诚    时间: 2012-5-7 20:51
带有STATIC的方法不能直接访问到前面不带有STATIC的变量,而非静态方法则可以访问。
作者: 黄珍    时间: 2012-5-8 10:01
静太方法可以通过类名直接访问,动态方法要类的实例化才能访问。
作者: 陈宗福    时间: 2012-5-10 13:03
简单的说:如果一个方法声明中含有static 修饰符,则称该方法为静态方法。如果一个方法声明中没有static 修饰符,则称该方法为非静态方法也就是实例方法
静态方法不对特定实例进行操作;非静态方法是对类的某个给定的实例进行操作,可以用this 来访问该方法。
作者: 刘春节    时间: 2012-5-11 00:01
静态变量使用 static 修饰符进行声明,在类被实例化时创建,通过类进行访问;
不带有 static 修饰符声明的变量称做非静态变量,在对象被实例化时创建,通过对象进行访问;
然后就是
一个类的所有实例的同一静态变量都是同一个值,同一个类的不同实例的同一非静态变量可以是不同的值
静态函数的实现里不能使用非静态成员,如非静态变量、非静态函数等
作者: 熊华明    时间: 2012-5-16 19:51
1、使用方法上的区别:
动态方法,在使用时需要先创建实例,才能调用实例方法;而静态方法则不需要,直接使用即可。
2、性能上的区别:
静态方法效率高,但是他会常占内存,占用内存空间,而动态方法在调用完后会自动释放,节省内存空间。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2