小编Set*_*arn的帖子

如何在Java中封装数组

我从Java开始,我正在学习setter,getters和encapsulation.我有一个非常简单的程序,两个类:

  • Container有一个私有的int array(numArray)与他的setter和getter.

  • Main创建一个Container对象并在totalArray方法中使用它.


public class Container {
    private int numArray[]= {0,0,0};
    public int[] getNumArray() {
        return numArray;
    }
    public void setNumArray(int index, int value){
        numArray[index] = value;
    }    
}

public class Main {
    public static void main(String[] args) {
        Container conte = new Container();
        System.out.println(totalArray(conte.getNumArray()));
        conte.getNumArray()[2]++;
        System.out.println(totalArray(conte.getNumArray()));
    }
    private static int totalArray (int v[]){
        int total=0;
        for (int conta =0; conta<v.length;conta++){
            total+=v[conta];
        }
        return total;
    }
}
Run Code Online (Sandbox Code Playgroud)

问题:我可以通过getter更改private int数组,我知道这是因为getNumArray返回引用 …

java arrays getter encapsulation

9
推荐指数
2
解决办法
7178
查看次数

标签 统计

arrays ×1

encapsulation ×1

getter ×1

java ×1