首页 > 编程知识 正文

静态方法与非静态方法区别在哪,简述静态方法与非静态方法的区别

时间:2023-05-04 10:02:03 阅读:201900 作者:4287

一、静态方法

静态方法又称类方法,是加staic关键字修饰的方法,在类定义的时候就被分配和装载入内存中。

静态方法属于类所有,类实例化前即可使用,同时不能使用superthis关键字。

静态方法只能调用静态方法以及访问静态数据域,不能调用实例方法或者访问实例数据域。

二、非静态方法

非静态方法,又称为实例方法、成员方法,是不加staic关键字修饰的方法,在类定义时不菲配内存,只有在类被实例化为对象后,对象调用该方法时才被分配内存,因此非静态方法属于对象,不属于类。

非静态方法即能调用静态方法以及访问静态数据域,也能调用实例方法或者访问实例数据域。

三、静态方法与非静态方法区别

1、调用方法

静态方法可以通过 类名.方法名 直接调用。
非静态方法只有在对象被实例化之后,即new一个新对象之后,才能通过 对象名.方法名 调用。

2、生命周期

静态方法的生命周期与类相同,在类定义的时候静态方法就被分配和装载入内存中,当本进程结束时,才会随之销毁。

非静态方法的生命周期和类的实例化对象相同,只有当类实例化了一个对象,非静态方法才会被创建,而当这个对象被销毁时,非静态方法也马上被销毁。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。