课后作业3
问题1:

解决:

问题2:

解决:
结果截图如下:

原因:
问题3:

解决:
结果截图为:

总结:

问题4:

解决:
代码如下:
package demo;
public class Tset1 {
	  public static void main(String[] args) {
		  // TODO 自动生成的方法存根
		  Tes2 test=new Tes2();                                  //实例化对象
		  Tes2.jingTai(test);                                         //调用静态方法
		
	  }
}
class Tes2
{
	  public int value=100;
	  public void setValue(int value)
	  {
		    this.value=value;                                                     //赋值函数
	  }
	  public int getValue()
	  {
		    System.out.println("输出结果为:"+value);             //输出类成员的函数
		    return 0;
	  }
	  public static void jingTai(Tes2 test)                                //静态方法
	  {
		    test.value=200;
		    test.setValue(300);                 
		    test.getValue();
		
	  }
}
在Tes2类中定义了一个静态方法,要想能够访问类的实例成员,需要在静态方法中包含参数,类型为Tes的对象,用来调用参数的成员与方法。
问题5:

输出结果如图:


解决:
运用javap反编译,先将代码存放到记事本中,将文件命名为.java文件,将保存类型改为所有文件后保存在指定文件夹中,用cd命令调转到当前指定文件夹中,然后用javac+文件名.java,注意空格,生成.class文件后,再输入javap -c+文件名,同样也要注意空格,就会输出反编译的结果。

可以看到调用了Intege的valueOf函数,在源文件中查看源码,发现结果如下:

调用了不同的函数,第一次调用了valueOf(int)的函数,而第二次调用了valueOf(String),函数导致输出的结果不同。
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号