我有一个项目要做,我有几个班。
在其中一个课程中,我有两种方法:
public byte [] getFirstFinalSum(byte [] firstSum) {
System.out.println("the first final sum is" +Arrays.toString(firstSum));
return firstSum;
}
我的第二种方法:
public byte [] getSecondFinalSum(byte [] secondSum) {
galoaField256 d = new galoaField256 (); // create new reference
d.setGeneratorPolynom(3);
d.getGeneratorPolynom();
d.setString("0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f");
d.getString();
d.loadExp();
d.loadLog();
byte [] finVector=new byte [4];
System.out.println("the second final sum is" +Arrays.toString(secondSum));
for(int i=0;i<4;i++) {
finVector[i]=(byte)d.add(firstSum[i],secondSum[i]);
}
return finVector;
}
现在我要做的是使用我的第二个方法firstSum [i],它是第一个方法的参数。我知道由于变量的范围,我无法访问该局部变量。问题是第一个方法是由另一个类调用的,该类与该类不同,也与调用第二个方法的类不同。另一个问题是这些方法是在一个方法中调用的,它们的返回类型没有给我们想要传递给那些方法参数作为参数的结果。
我是OCAJP和OCPJP oracle证书持有者,我知道内部类,但我不确定我是否使用第二种方法:getSecondFinalSum作为第一种方法中的方法,应用内部类原则。我这样做但我也无法在第二种方法中访问firstSum [i]。任何人都可以告诉我如何实现这一目标?
答案 0 :(得分:-2)
如果出现类似的情况,我会声明一个GLOBAL var并在使用后取消设置。我知道它不是那么安全的方式。但它确实有效。