How do I get the handles of all open figures in MATLAB

There are a few ways to do this. One way to do this is to get all the children of the root object (represented in prior versions by the handle 0):

figHandles = get(groot, 'Children');  % Since version R2014b
figHandles = get(0, 'Children');      % Earlier versions

Or you could use the function findobj:

figHandles = findobj('Type', 'figure');

If any of the figures have hidden handles, you can instead use the function findall:

figHandles = findall(groot, 'Type', 'figure');  % Since version R2014b
figHandles = findall(0, 'Type', 'figure');      % Earlier versions

One of the best things to do is to NOT need to look for the handles. When you create each figure, capture its handle.

h(1) = figure;
h(2) = figure;
...

As one of the developers here told me:

They are called handles, because you are supposed to hold on to them