java本地调用服务方式
java中非静态方法能调用静态方法吗?
java中非静态方法能调用静态方法吗?
首先直接回答你,在java非静态方法可以调用静态方法。
这个结论可以引伸为在非静态方法中能访问静态方法、静态成员变量和非静态成员,而在静态方法中只能访问静态成员,即静态方法和静态成员变量。
在java的基本概念中,类和对象是两个截然不同又相互关联的概念,类相当于模板,是抽象的,对象相当于实例,是具体的,所以两者的联系就是类实例化之后成为对象。静态成员本身是归属于类的,也称类成员,而实例成员归属于对象。在java的机制中,当类被加载的时候,实际上加载的是它的模板,就是这个类文件,这个时候只有它的静态成员。而只有通过new关键字或反射方法调用了类的构造方法之后,才会生成类的实例对象,这个时候内存里才有了实例成员。
综上,在内存里总是先有静态成员,然后才有实例成员,所以在实例方法里调用静态方法才有可能,反之上哪调用去?而且,实例方法归属于对象,想在静态方法里调用的话也得先把对象实例化了才能调用呀,直接调用是取无根之水,不行吧。唠叨这么多,希望对你有所帮助,助你知其然且知其所以然!
javaswing组件调用?
完全可以动态加载组件。你在button触发的事件里,加一个 (
java中的invoke方法?
invoke(调用)就是调用Method类代表的方法。可以实现动态调用,例如可以动态的传人参数,可以把方法参数化。
可以把方法参数化invoke(class, method),比如Test类里有一系列名字相似的方法setValue1、setValue2等等,可以把方法名存进数组v[],然后循环里invoke(test,v[i]),就顺序调用了全部setValue。
httpinvoker是什么协议?
HttpInvoker是常用的Java同构系统之间方法调用实现方案,是众多Spring项目中的一个子项目。顾名思义,它通过HTTP通信即可实现两个Java系统之间的远程方法调用,使得系统之间的通信如同调用本地方法一般。
HttpInvoker有点类似于Java的服务远程调用RMI,但是两个基于的协议不一样。RMI是直接服务器直接的调用,需要防火墙单独放开端口。而HttpInvoker是基于http协议进行远程方法调用的。需要容器支持。