2009-11-08 4 views

ответ

0

Если вы хотите использовать переменные между двумя функциями, вы можете использовать глобальные переменные или передавать их с помощью указателей.

Пример с указателями:

public void start() { 
    ArrayList a = new ArrayList(); 
    func(a); 
} 

private void func(ArrayList a) 
{ 
    a.add(new Object()); 
} 
0

Не уверен, что означает этот вопрос. Все общедоступные классы являются общедоступными, все переменные могут быть разделены, если они доступны через общедоступные методы и т. Д.

+0

, они могут использоваться совместно с защитой a nd private слишком долго, пока вызывающий метод имеет к ним доступ. – Spoike

0

В VB sensestatic field в Java является общим для всех экземпляров класса.

В classical sense Java имеет различные механизмы доступа к RPC, сервисам и базам данных.

1

Это зависит от того, что вы имеете в виду, поскольку вы можете «обменивать переменные» или «делиться данными» различными способами. Я понимаю, что вы новичок, поэтому я сделаю это кратким. короткий ответ is yes, вы можете обмениваться переменными и ниже - это несколько способов сделать это.

Обмен данными в качестве аргументов для параметров функций

void funcB(int x) { 
    System.out.println(x); 
    // funcB prints out whatever it gets in its x parameter 
} 

void funcA() { 
    int myX = 123; 
    // declare myX and assign it with 123 
    funcB(myX); 
    // funcA calls funcB and gives it myX 
    // as an argument to funcB's x parameter 
} 

public static void main(String... args) { 
    funcA(); 
} 

// Program will output: "123" 

Доля данных, как атрибуты в классе

Вы можете определить класс с атрибутами, когда экземпляр класса к объекту (т.е. вы «новый« это », вы можете установить атрибуты объекта и передать его. Простой пример должен иметь класс параметров:

class Point { 
    public int x; // this is integer attribute x 
    public int y; // this is integer attribute y 
} 

Вы можете использовать его следующим образом:

private Point createPoint() { 
    Point p = new Point(); 
    p.x = 1; 
    p.y = 2; 
    return p; 
} 

public static void main(String... args) { 
    Point myP = createPoint(); 
    System.out.println(myP.x + ", " + myP.y); 
} 

// Program will output: "1, 2" 
0

использование статического ключевого слова, например:

private static int count = 1; 
public int getCount() { 
     return count ++; 
    } 

каждый U Вызов метода GetCount (), счет будет продолжаться +1

 Смежные вопросы

  • Нет связанных вопросов^_^