How do I refer an instance?

If this has been asked before, please point me to the right topic.

Basically, I am new to unity3d, and am coming from flash(as3). My question is,
1)How do I create a new instance from a prefab.(via code, obviously!)And are there any other ways for this other than the Instantiate method?

  1. In flash, when I create objects, I can store them in an array, or go via parent or stage like stage.some_mc.mc_another, e.t.c. How do I do this in unity?
    Let’s say I have a script in the main camera to create 4 cubes, now I want another object, say player( lol )to get the position of one of the cubes, from the main camera…so how do I do that?(if there are multiple ways of doing this, please tell all of them)

  2. How do I keep data between scenes/levels?

Time to get reading the manual and documentation:

  1. read this:
    Unity - Scripting API: Object.Instantiate

  2. read this:
    http://unity3d.com/support/documentation/ScriptReference/index.Accessing_Other_Game_Objects.html
    and this:
    http://unity3d.com/support/documentation/ScriptReference/index.Accessing_Other_Components.html

  3. read this:
    Unity - Scripting API: Object.DontDestroyOnLoad

enjoy!