java的疑惑

来源:百度知道 编辑:UC知道 时间:2024/09/20 15:43:56
我真的实在没有分了,非常谢谢能帮我解惑的各位~~

本人刚学java 不久,在写题时,main里所需要的函数,我一概用static编写 ,可是我发现用static时非常占用内存,例如:
public test {
static void out(){
System.out.println("static waste so much memory");
}
public static void main(String args[]){
out();
}
}

如果我在main希望调用一个函数,而又不希望用static(因为占用内存太多) ,有没有内存占用比较少的又能实现同样功能的方法呢??

谢谢~~~
非常感谢各位~~
可是在main里实例化一个对象的方法,相比较于使用static 并没对优化内存有明显的改善,如果真的没有别的方法那只能用C++去写那道题了~~

static怎么可能会浪费内存?

静态的存在目的就是为了让不同的类或者方法共享同一个方法或变量的内存空间,可以节约内存的啊……

这样写吧:
public class Test {

public static void out() {
System.out.println("static waste so much memory");
}

public static void main(String[] args) {
test.out();
}
}

想在别的类中调用时记得先new test();。

public test{
public void out(){
System.out.println("static waster so muck memory");
}
public static void main(String[] args){
test t=new test();
t.out();
}
}

public class Temp {
public void out(){
System.out.println("new Instance");
}
public static void main(String[] args) {
new Temp().out();
}

}

就掉一次static 怎么会占多少内存?

原因应该不在这里,因该是启动虚拟机占的内存吧。

我觉得可以这么写
public class Test {
public void out() {
System.out.println("static waste so much memory");
}

publ