Wszystko zależy od tego, co chcesz uzyskać, i w czym będziesz chciał wprowadzać zmiany(wzorce projektowe). Ja bym się zastanowił czy jest sens trzymania broni w tablicach, a nie w postaciach, jednak twojego kodu nie widziałem, więc odpowiedzi Ci nie udzielę.
Chodzi o to że ja chcę mieć porządek w kodzie i jak będę to wszystko trzymał w postaciach to zrobi się bałagan, dlatego najlepiej jest zrobię klasę nazwaną np. Bronie, Tarcze, Zbroje itd.
Ale nie wiem jak się to dokładnie robi bo to już wyższa abstrakcja.
Najpierw działa konstruktor domyślny pól klasy (więc Broni) tak jak napisał @nintyfan, a dopiero potem uruchamiany jest konstruktor klasy głównej (Postac). Jakbyś chciał uruchamiać inny konstruktor to sprawa się komplikuje bo wtedy musiałbyś mieć pole wskaźnika do Broni, tworzyć w konstruktorze Postaci operatorem new Bron z parametrami, a w destruktorze go niszczyć.