1.实例方法 (动态方法)
标识符 :- 开头
调用方式:实例对象 + 函数
实例方法存储在堆栈上
2.类方法(静态方法)
标识符:+开头
调用方式:类+ 函数
类方法存储在堆上
3.实例方法和类方法区别
1)类方法在程序开始时生成内存,是连续的;实例方法在程序运行中生成内存,是离散的,所以静态方法可以直接调用,实例方法要先生成实例,通过实例调用方法,静态速度很快,但是多了会占内存。
2)类方法在堆上分配内存,实例方法在堆栈上(错误)。事实上,所有的方法都不可能在堆或者堆栈上分配内存,方法作为代码是被加载到特殊的代码内存区域,这个区域是不可写的。
4.使用场景
1)实例方法用于需要访问或者修改某个实例的成员变量
2)类方法一般用于实现一些工具方法,比如对某个对象进行扩展,或者实现单例
网友评论