Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.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 - Fatal编程技术网

Java 将对象列为类字段

Java 将对象列为类字段,java,Java,我想将List对象设置为类字段,然后使用ArrayList()作为List的具体类。 原因是我想在程序的不同部分多次调用setData方法,每次都必须将数据添加到相同的对象数据,而不是不同的对象数据 代码如下: import java.util.ArrayList; import java.util.List; public class container { private static List<String> data = ArrayList<String>

我想将
List
对象设置为类字段,然后使用
ArrayList()
作为
List
的具体类。 原因是我想在程序的不同部分多次调用
setData
方法,每次都必须将数据添加到相同的对象数据,而不是不同的对象数据

代码如下:

import java.util.ArrayList;
import java.util.List;

public class container {
    private static List<String> data = ArrayList<String>();

    public static List<String> getData() {
        return data;
    }
    public static void setData(String a) {
        data.add(a);
    }
}
import java.util.ArrayList;
导入java.util.List;
公营货柜{
私有静态列表数据=ArrayList();
公共静态列表getData(){
返回数据;
}
公共静态void setData(字符串a){
数据.添加(a);
}
}
我想这段代码应该会导致错误。
如何更改代码,使其具有正确语法的类似结果

如果此代码不会导致错误,有人能告诉我何时(在执行程序的哪个部分)创建静态数据对象吗? 另外,我不打算创建容器对象,只想在程序中多次调用container.setData(String a)方法。

测试如下:

import java.util.ArrayList;
import java.util.List;

public class container {
private static List<String> data = new ArrayList<String>();
//              for java 1.5-1.6 point type here ^^^^^^^ 
//              for java 1.7+ you can use new ArrayList<>();
public static List<String> getData() { return data;}
public static void setData(String a) { data.add(a);}
}
import java.util.ArrayList;
导入java.util.List;
公营货柜{
私有静态列表数据=新的ArrayList();
//对于java 1.5-1.6,此处为点类型^^^^
//对于java 1.7+,可以使用新的ArrayList();
公共静态列表getData(){return data;}
公共静态void setData(字符串a){data.add(a);}
}
测试如下:

import java.util.ArrayList;
import java.util.List;

public class container {
private static List<String> data = new ArrayList<String>();
//              for java 1.5-1.6 point type here ^^^^^^^ 
//              for java 1.7+ you can use new ArrayList<>();
public static List<String> getData() { return data;}
public static void setData(String a) { data.add(a);}
}
import java.util.ArrayList;
导入java.util.List;
公营货柜{
私有静态列表数据=新的ArrayList();
//对于java 1.5-1.6,此处为点类型^^^^
//对于java 1.7+,可以使用新的ArrayList();
公共静态列表getData(){return data;}
公共静态void setData(字符串a){data.add(a);}
}
测试如下:

import java.util.ArrayList;
import java.util.List;

public class container {
private static List<String> data = new ArrayList<String>();
//              for java 1.5-1.6 point type here ^^^^^^^ 
//              for java 1.7+ you can use new ArrayList<>();
public static List<String> getData() { return data;}
public static void setData(String a) { data.add(a);}
}
import java.util.ArrayList;
导入java.util.List;
公营货柜{
私有静态列表数据=新的ArrayList();
//对于java 1.5-1.6,此处为点类型^^^^
//对于java 1.7+,可以使用新的ArrayList();
公共静态列表getData(){return data;}
公共静态void setData(字符串a){data.add(a);}
}
测试如下:

import java.util.ArrayList;
import java.util.List;

public class container {
private static List<String> data = new ArrayList<String>();
//              for java 1.5-1.6 point type here ^^^^^^^ 
//              for java 1.7+ you can use new ArrayList<>();
public static List<String> getData() { return data;}
public static void setData(String a) { data.add(a);}
}
import java.util.ArrayList;
导入java.util.List;
公营货柜{
私有静态列表数据=新的ArrayList();
//对于java 1.5-1.6,此处为点类型^^^^
//对于java 1.7+,可以使用新的ArrayList();
公共静态列表getData(){return data;}
公共静态void setData(字符串a){data.add(a);}
}
我引用:“原因是我想在程序的不同部分多次调用setData方法,每次都必须将数据添加到相同的对象数据,而不是不同的对象数据。”

如果您的数据字段声明为
静态
,则只有一个数据字段,因此这不会造成任何问题。你测试过代码了吗,还是你认为会有错误?

我引用:“原因是我想在程序的不同部分多次调用setData方法,每次都必须将数据添加到相同的对象数据,而不是不同的对象数据。”

如果您的数据字段声明为
静态
,则只有一个数据字段,因此这不会造成任何问题。你测试过代码了吗,还是你认为会有错误?

我引用:“原因是我想在程序的不同部分多次调用setData方法,每次都必须将数据添加到相同的对象数据,而不是不同的对象数据。”

如果您的数据字段声明为
静态
,则只有一个数据字段,因此这不会造成任何问题。你测试过代码了吗,还是你认为会有错误?

我引用:“原因是我想在程序的不同部分多次调用setData方法,每次都必须将数据添加到相同的对象数据,而不是不同的对象数据。”


如果您的数据字段声明为
静态
,则只有一个数据字段,因此这不会造成任何问题。您是否测试了代码,或者您只是认为会出现错误?

如果您添加缺少的
新单词,您的代码会正常工作,并且它会按照您的需要工作。加载
容器
类时,将实例化ArrayList。这通常发生在控制流到达引用该类的类时。因此,无论何时调用这些方法中的任何一个,数据字段都已准备就绪

但是,如果您(或您使用的库为您提供了同步访问共享对象的功能),您可能希望了解“”并同步对共享对象的访问

import java.util.ArrayList;
导入java.util.List;
公营货柜{

私有静态列表数据=新ArrayList();//如果添加缺少的
new
单词,则代码可以正常工作,并且可以根据需要工作。加载
容器
类时,将实例化ArrayList。这通常发生在控制流到达引用该类的类时。因此,无论何时调用这些方法,数据字段都已准备就绪。

但是,如果您(或您使用的库为您提供了同步访问共享对象的功能),您可能希望了解“”并同步对共享对象的访问

import java.util.ArrayList;
导入java.util.List;
公营货柜{

私有静态列表数据=新ArrayList();//如果添加缺少的
new
单词,则代码可以正常工作,并且可以根据需要工作。加载
容器
类时,将实例化ArrayList。这通常发生在控制流到达引用该类的类时。因此,无论何时调用这些方法,数据字段都已准备就绪。

但是,如果您(或您使用的库为您提供了同步访问共享对象的功能),您可能希望了解“”并同步对共享对象的访问

import java.util.ArrayList;
导入java.util.List;
公营货柜{
private static List data=new ArrayList();//您的代码