在java中main函数如何调用外部非static方法
使用外部方法时(不管是static还是非static),都要先new一个对象,才能使用该对象的方法。
举例如下:
测试函数(这是错误的):
publicclassTest{ publicstaticvoidmain(String[]args){ Employeeemployee=null; employee.setName("旺旺");//有警告,况且这里也执行不下去 employee.setEmail("ww@qq.com"); employee.setPwd("123333"); System.out.println(employee.getName()+""+employee.getEmail()+""+employee.getPwd()); } }
虽然,把Employee类中的方法都写成static,main函数就可以调用了。但都知道,static类型在程序执行前,系统会为其分配固定的内存。如果所有方法都这样做,系统不崩溃了。
正确的做法:
使用外部非static方法时,要先new一个对象,才能使用该对象的方法。
publicclassTest{ publicstaticvoidmain(String[]args){ Employeeemployee=newEmployee(); employee.setName("旺旺"); employee.setEmail("ww@qq.com"); employee.setPwd("123333"); System.out.println(employee.getName()+""+employee.getEmail()+""+employee.getPwd()); } }
publicclassEmployee{ privateIntegerid; privateStringname; privateStringpwd; privateStringemail; publicEmployee(){ } publicIntegergetId(){ returnid; } publicvoidsetId(Integerid){ this.id=id; } publicStringgetName(){ returnname; } publicvoidsetName(Stringname){ this.name=name; } publicStringgetPwd(){ returnpwd; } publicvoidsetPwd(Stringpwd){ this.pwd=pwd; } publicStringgetEmail(){ returnemail; } publicvoidsetEmail(Stringemail){ this.email=email; } }
补充知识:java中static方法与非static方法之间的调用关系
java中static方法与非static方法之间的调用关系,
有以下四种:
1、非static方法调用非static方法,直接通过方法名调用
2、static方法调用static方法,直接通过方法名调用
3、非static方法调用static方法,直接通过方法名调用
4、static方法调用非static方法,通过类对象来调用
示例如下:
packagecom.chendi.objectNav; publicclassMainClass{ publicstaticvoidmain(String[]args){ Circlecircle=newCircle(); Lineline=newLine(); //静态方法调用静态方法 doSomeThing(circle); doSomeThing(line); //静态方法调用非静态方法 MainClassmainClass=newMainClass(); mainClass.noStatic(); } publicvoidnoStatic(){ //非静态方法调用非静态方法 test1(); //非静态方法调用静态方法 test2(); } publicvoidtest1(){ System.out.print("1"); } publicstaticvoidtest2(){ System.out.print("2"); } publicstaticvoiddoSomeThing(Shapeshape){ shape.erase(); } }
以上这篇在java中main函数如何调用外部非static方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。