在Java中,变量放在栈中,new()放在堆中,那方法放在哪里,类调用方法时在内存中是怎样实现的呢?

解决方案 »

  1.   

    内存有代码区、数据区、堆和栈,其中代码区存放代码,数据区存放静态变量和字符串常量,栈中存放局部变量,堆中存放new出来的。
      

  2.   

    大家再看看这个,帮忙解释下出错是什么原因呢?
    class A{
    public void fun1(){
    System.out.println("1、A类 --> public void fun1(){}") ;
    }
    public void fun2(){
    this.fun1() ;
    }
    };
    class B extends A{
    public void fun1(){ // 将方法覆写了
    System.out.println("2、B类 --> public void fun1(){}") ;
    }
    public void fun3(){ // 此操作为子类自己定义的,父类中不存在
    System.out.println("3、B类 --> public void fun3(){}") ;
    }
    };
    public class PolDemo03{
    public static void main(String args[]){
    A a = new A() ;
    B b = (B)a ;
    b.fun2() ;
    }
    };
      

  3.   

    每个class后都加了;号 这个是java不是写c++