静态函数和非静态函数的区别

使用static修饰的静态方法是属于整个类的类方法,它在内存中的代码段会随类的定义而被分配和装载;而非静态方法是属于具体对象的方法,当这个对 象创建时,在对象的内存中会拥有此方法的专用代码段。在引用静态方法时,可以使用对象名加前缀,也可以使用类名加前缀。eg. classA 实例化了一个对象objectA,
classA中定义了一个静态方法:run( ). 则可使用 classA.run( ) 或者objectA.run( )来执行。

非静态方法既可以访问静态数据成员 又可以访问非静态数据成员,而静态方法只能访问静态数据成员;同样地非静态方法既可以访问静态方法又可以访问非静态方法,而静态方法只能访问静态数据方法。特别注意的是静态方法中的main方法,它作为程序运行的入口点,在每个程序中有且只能有一个。

原文地址:https://www.cnblogs.com/hanke123/p/4728413.html