Yes, local-storage is where you define your variables that are local to the scope of the method. It is not required to use the local-storage section header in a method as that is the default.
You can also define variables within the procedure division using the declare statement.
declare myvar as string = "test"
or within the scope of a perform like:
perform using myvar as string
statements
end-perform
where the variable will go out of scope after the perform exits.
If you would like to define global variables that can be accessed by all methods then you would define them in the working-storage section of the class.
If you would like them to be shared by all instances of a class then you can place them in working-storage and add the static keyword.