It looks like you are using instance methods instead of static ones.
If you do not want to create an object, you must declare all your methods static, so something like
private static void methodName(Argument args...)
If you want the variable to be accessible to all of these methods, you must initialize it outside the methods and limit its scope, declare it private.
private static int[][] array = new int[3][5];
Global variables usually look from top to bottom (especially for situations like yours), because in a large-scale program they can be harmful, so making it confidential will at least prevent some problems.
Also, I will say normal: you should try to keep the code a little tidy. Use the descriptive names of classes, methods, and variables and keep your code neat (with proper indentation, line breaks, etc.) and consistent.
Here is the final (abbreviated) example of what your code should be:
public class Test3 { //Use this array in your methods private static int[][] scores = new int[3][5]; /* Rather than just "Scores" name it so people know what * to expect */ private static void createScores() { //Code... } //Other methods... /* Since you're now using static methods, you don't * have to initialise an object and call its methods. */ public static void main(String[] args){ createScores(); MD(); //Don't know what these do sumD(); //so I'll leave them. } }
Ideally, since you are using an array, you should create an array in the main method and pass it as an argument to each method, but an explanation of how this works is probably a completely new question, so I will leave it to that.