java函数加不加static有何不同?

publicclassA{publicstaticinttestMethod(){return1;}}与publicclassA{publicinttestMethod(){return1;}}假设我现在要调用方法testMethod.publicclassB{publicvoidmain(String[]args)...

开满天机
浏览 710回答 1
1回答

海绵宝宝撒

java中声明为static的方法称为静态方法或类方法。静态方法可以直接调用静态方法,访问静态变量,但是不能直接访问实例变量和实例方法。静态方法中不能使用this关键字,因为静态方法不属于任何一个实例。静态方法不能被子类的静态方法覆盖。例如:static class CompanyEmployee{public static string GetCompanyName(string name) { ... }public static string GetCompanyAddress(string address) { ... }}一般来说,类中标注了static的函数能在类外直接引用,比如说:String M_string1 =CompanyEmployee.GetCompanyName(M_string2)而没有标注static的函数则必须声明一个类的实体,有实体来引用。比如说:static class CompanyEmployee{public string GetCompanyName(string name) { ... } //没有Staticpublic static string GetCompanyAddress(string address) { ... }}CompanyEmployee M_CompE = new CompanyEmployee();String M_string1 =M_CompE.GetCompanyName(M_string2);//静态类
打开App,查看更多内容
随时随地看视频慕课网APP