# Dynamic Class Instantiation

**URL:** <https://forum.kirupa.com/t/dynamic-class-instantiation/225236>\
**Category:** flash\
**Created:** [May 9, 2007, 10:33pm UTC](https://forum.kirupa.com/t/dynamic-class-instantiation/225236 "2007-05-09T22:33:26Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![McGuffin](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/mcguffin/32/408_2.png) [@McGuffin](https://forum.kirupa.com/u/McGuffin)\
**Post date:** [May 9, 2007, 10:33pm UTC](https://forum.kirupa.com/t/dynamic-class-instantiation/225236/1 "2007-05-09T22:33:26Z")

</div>

Alright, I solved this problem for AS2 and AS3, but it’s not as elegant as I’d like.

```auto

import flash.utils.getDefinitionByName;
var className:String = "com.cfms.Navigation";
var classReference:Class = getDefinitionByName(className) as Class;
var classInstance:Object = new classReference();

```

This all works well and gravy if I’ve already defined the Navigation class once before, as such:

```auto

import com.cfms.Navigation;
var nav = new Navigation();
nav = null;

```

But I was wondering if there was any way possible to skip that last step, instead of having to add in all the manual instances? I understand this is so that Flash will compile the classes into the SWF document, but is there a more elegant way to do this?
