java静态⽅法实例化_【Java初探外篇02】——关于静态⽅法
与实例⽅法
在Java的学习中,我们知道,⽅法的使⽤是不可或缺的重要部分,在我们编写第⼀个Java程序hello world的时候,我们就要开始使⽤主⽅法main();它就是⼀个静态⽅法(static method) 。
public class sty_01{
//主⽅法main()
public static void main(String[] args){
system.out.println("hello world!");
}
}
那么接下来我们具体学习下静态⽅法与实例⽅法的区别。
静态⽅法与实例⽅法的定义
实例⽅法(instance method)
我们知道在类体中,⼀个⽅法的创建,包括 权限修饰符,返回值类型,⽅法名,这样定义出来的⽅法就是实例⽅法。
public int aint(){
}
静态⽅法(static method)
⽽静态⽅法的定义则略有不同,静态⽅法的定义在权限修饰符和返回值类型之间多出了⼀个关键字static,⽽这,也是⼆者在语法上最根本的区别。
public static int aint(){
}
关键字static,它也是⼀个修饰符,⽤来修饰类⽅法和类变量。其主要作⽤就是使类和变量能够实现跨类使⽤,常⽤来声明独⽴于对象的静态⽅法。
⼆者的区别
由此,我们可以⼤致总结⼀下⼆者之间的区别以及使⽤的⽅法。
语法定义上
静态⽅法是被static修饰符修饰的,⽽实例⽅法则没有。
作⽤上
静态⽅法可以实现⽅法的跨类使⽤,⽽实例⽅法只能在本类中被实例化对象调⽤。
机制上
静态⽅法是独⽴于对象的,⽽实例⽅法则必须依赖于实例化对象,才能被调⽤,静态⽅法的内存占⽤较实例⽅法⼤,因为实例⽅法,只有在实例化对象调⽤的情况下才会被执⾏,⽽静态⽅法是独⽴与对象的,所以程序执⾏之初就会被创建,占⽤内存。
使⽤上
静态⽅法是不需要new⼀个实例化对象就可以调⽤的⽅法,因为静态⽅法是独⽴与对象的⽅法,可以
直接进⾏调⽤。
⼆者的使⽤分析
我们了解到了静态⽅法与实例⽅法的区别后,通过分析,可以得出两者的适应的使⽤⽅式。
静态⽅法,是跨类的,独⽴于对象的,并且是较占⽤内存的,所以第⼀⾸选的⽅法使⽤,是不会使⽤静态⽅法的,我们⼀般使⽤静态⽅法,应当是针对其特有的功能性,即实现跨类调⽤,这说明,静态⽅法就是为⼀些公共⽅法准备的,可以多类,多项⽬,多处通⽤的公共⽅法的定义,⽐如⼀些⼯具类Utils的⽅法,。
实例化⽅法,实例化⽅法只能在本类中调⽤,需要依赖于实例化对象,占⽤内存⼩,这说明实例化⽅法主要功能是实现当前类对象的某些功能,是特例的,并且多会调⽤到当前类的⼀些成员变量。
所以在⼀些具体功能类中,具体功能实现⽅法的定义上,应当使⽤实⼒⽅法,⽽在⼀些公共类,会在多个类中调⽤到的⼯具类等,其⽅法主要具有公共调⽤等需求时,使⽤静态⽅法。
关于静态⽅法与实例⽅法的了解,暂时就这么多,可能⽐较浅显,都是个⼈结合⼆者的部分特性分析得出,可能有缺错之处,还望能够不吝指教。
之后深⼊了解后再做详细分析。
更新时间:
2019-4-2
11:25实例化类和实例化对象

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。