「java静态方法参数吗」Java中静态方法

博主:adminadmin 2022-11-29 20:27:11 40

本篇文章给大家谈谈java静态方法参数吗,以及Java中静态方法对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java 静态方法如何实现参数传递

import java.lang.reflect.Method;

public class MethodObject

{

private Object target;//

private String method_name;

public MethodObject(){}

public MethodObject(Object target, String methodName) {

super();

this.target = target;

this.method_name = methodName;

}

public MethodObject(Object target) {

super();

this.target = target;

}

public static MethodObject function(Object target, String methodName,Object...objects)

{

MethodObject mo=new MethodObject( target,  methodName);

// mo.invoke(objects);

return  mo;

}

public static MethodObject function(Object target,Object...objects)

{

MethodObject mo=new MethodObject( target);

// mo.invoke(objects);

return  mo;

}

public Object invoke(Object... objects)

{

Class clazz = target.getClass();

try {

Method[] ms = clazz.getDeclaredMethods();

Method targetMethod = null;

if(method_name==nullms.length==1)

{

targetMethod=ms[0];

}

else if(method_name!=nullms.length=1)

{

for(Method m : ms){

if(method_name.equals(m.getName())){

targetMethod = m;

break;

}

}

}

else

{

return null;

}

targetMethod.setAccessible(true);

return targetMethod.invoke(target, objects);

} catch (Exception e) {

// TODO Auto-generated catch block

throw new RuntimeException(e);

}

}

public void rebund(Object anothertarget){

target = anothertarget;

}

public Object getTarget()

{

return target;

}

public void setTarget(Object target)

{

this.target = target;

}

public String getMethod_name()

{

return method_name;

}

public void setMethod_name(String method_name)

{

this.method_name = method_name;

}

java中静态变量和静态方法的优缺点

java静态变量和静态方法会在程序初始化运行时候就加载到内存。

优点:不需要在进行实例化。静态变量的值,直接赋新值即可,不需要参数传递,之后可以直接进行参数引用即可;静态方法可以直接通过"类名.方法"的形式进行方法调用。通常方法被多次调用,并且方法中没有动态方法引用的时候使用比较方便。

缺点:初始化加载到内存,如果后续没被引用,加大了内存负担和程序运行负担,影响程序运行效率(一般很小),并且静态变量如果多处被引用赋值,很可能导致参数值混乱(如果是不变的值,最后加上final修饰,强制不能修改)。

备注:上面的都是理论知识,实际开发中,根据实际项目需求进行灵活调整即可。

java中一个静态方法能够将另一个静态方法作为参数吗?我没觉得有什么

理论上是可以的,但是实际中有线程安全的问题,所以不建议这么用,有问题继续探讨。

java对象作为方法参数,静态方法能处理么?

呃....S是个对象(Object)

Static void m1(String ss)

将方法的参数:s的类型换成String你是不是觉得这样是可以的

而String 的父类是Object怎么不可以呢~废话说多了

进入正题:

首先你说的静态方法只处理静态变量是对于它所在类里成员

例如:

class S

{

double a=2;

}

m1()

{

这里不不能直接调用 a变量的

如果a:

static a=2;

就可以调用

}

//静态方法不能调用非静态成员或非静态方法

因为静态方法不属性任何一个对象~它只属于类本身(产生一个对象首先要new)

Java中,为什么静态方法不能使用类型形参

静态方法只能使用静态变量, 因为静态的属性属于类级别的,而普通的参数是对象级别的。

java中静态,有无返回值,是否含参数总结

静态代表的是该属性或者方法属于整个类,随着类的加载而加载 。所以使用他的时候直接通过类名来调用即可,不需要new对象来调用。

返回值的话主要是看你的返回值的修饰符是void代表没有返回值,否则的话有返回值。

别的类不可以调用此类的静态的方法或者属性

java静态方法参数吗的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于Java中静态方法、java静态方法参数吗的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-29,除非注明,否则均为首码项目网原创文章,转载请注明出处。