Как получить доступ к переменным в другом пакете в Java? - PullRequest
0 голосов
/ 10 ноября 2018

Я пытаюсь получить доступ к переменным в другом пакете в Java, я попробовал некоторый код:

Первый пакет содержит два класса, это первый

package encapsuation;
import s2.foo;

public class Encapsulation {

    public static void main(String[] args) {
        s1 a = new s1();
        a.age = 21;
        a.name = "ahmed";

        a.print();
        foo.print();
    }

}

Второй, это то, что мне нужно для доступа в классе второго пакета.

package encapsuation;

public class s1 {
    public  static String name;
    public static int age;

    public static void print()
    {
        System.out.println(name + " " + age);    
    }
}

Второй пакет содержит один класс

package s2;
import encapsuation.s1;

public class foo{

    public static void print()
    {
        System.out.println(s1.name + " " + s1.age);    
    }

}

Что я пытаюсь исправить?

И почему я не могу получить доступ к переменным в классе второго пакета в классе "public class foo", но могу получить доступ к ним только в методе print?

1 Ответ

0 голосов
/ 10 ноября 2018

Вы можете сделать что-то вроде этого:

public class foo{
    String s = s1.name; 
    public static void print()
    {
        System.out.println(s1.name + " " + s1.age);    
    }

}
...