Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在同一个类中,我们如何在不借助父类的帮助下将变量从一个方法传递到另一个方法?_Java_Variables_Methods - Fatal编程技术网

Java 在同一个类中,我们如何在不借助父类的帮助下将变量从一个方法传递到另一个方法?

Java 在同一个类中,我们如何在不借助父类的帮助下将变量从一个方法传递到另一个方法?,java,variables,methods,Java,Variables,Methods,让我们看一个简单的程序,如下所示: public class Dope { public void a() { String t = "my"; int k = 6; } public void b() { System.out.println(t+" "+k);/*here it shows an error of not recognizing any variable*/ } public static void main(String Ss[]) { } }

让我们看一个简单的程序,如下所示:

public class Dope
{
public void a()
{
   String t = "my";
  int k = 6;
}
public void b()
{
    System.out.println(t+" "+k);/*here it shows an error of not recognizing any variable*/
}
public static void main(String Ss[])
 {

 }   
}
尽管我可以通过这种方式来纠正它:

  public class Dope
{
String t;
  int k ;
public void a()
{
    t = "my";
   k = 6;
}
public void b()
{
    System.out.println(t+" "+k);
}
 public static void main(String Ss[])
 {

 }   
}

但我想知道,在我以前的程序中,是否有任何方法可以将
方法a
中声明的变量传递给
方法b
,而不需要父类的帮助?

您可以使用两个参数声明b方法,如下例所示:

public class Dope
{
    public void a()
    {
        String t = "my";
        int k = 6;

        b(t, k);
    }

    public void b(String t, int k)
    {
        System.out.println(t+" "+k);
    }

    public static void main(String Ss[])
    {

    }   
}

您可以使用两个参数声明b方法,如下例所示:

public class Dope
{
    public void a()
    {
        String t = "my";
        int k = 6;

        b(t, k);
    }

    public void b(String t, int k)
    {
        System.out.println(t+" "+k);
    }

    public static void main(String Ss[])
    {

    }   
}

将方法的签名从
b()
更改为
b(字符串t,int k)

并从方法
a()

通过使用这些方法参数,您无需更改变量的范围

但请记住,在Java中,当您将某个对象作为参数传递时,它是 按值作为调用传递


将方法的签名从
b()
更改为
b(字符串t,int k)

并从方法
a()

通过使用这些方法参数,您无需更改变量的范围

但请记住,在Java中,当您将某个对象作为参数传递时,它是 按值作为调用传递


它们被称为方法参数。非常感谢,请原谅我对技术术语的理解不好,我的意思是你可以使用的技术是方法参数。当然,您需要修改
b()
以获取参数。只需为方法b定义参数并传递t和k?这是最简单的Java,请尝试先学习Java,通过阅读一本书或做一个教程!了解如何声明方法参数并在调用方法时传递它们:请参阅Oracle的Java教程中的内容。它们被称为方法参数。非常感谢,请原谅我对技术术语理解不透彻,我的意思是,您可以使用的技术是方法参数。当然,您需要修改
b()
以获取参数。只需为方法b定义参数并传递t和k?这是最简单的Java,请尝试先学习Java,通过阅读一本书或做一个教程!了解如何声明方法参数并在调用方法时传递它们:请参阅Oracle Java教程中的。