How to get a complete list of class properties including private properties.

26 views (last 30 days)
I wrote a class which have both public and private properties.
In a private mehod of the class, I need to get a complete list of porperties of the class, definitely, including all private properties.
Buit-in function 'properties' reveals only public properties.
What would be my options?
Thank you.

Accepted Answer

Steven Lord
Steven Lord on 7 Dec 2022
Create a metaclass object and iterate through the PropertyList.
  2 Comments
Jaeseok
Jaeseok on 7 Dec 2022
Edited: Jaeseok on 7 Dec 2022
very quick & absolutley correct answer. Thank you.
> mc = metaclass(MYCLASS.empty);
> prop_list = {mc.PropertyList.Name};
Steven Lord
Steven Lord on 7 Dec 2022
That would work as long as MYCLASS is not Abstract. But if you have an Abstract class (meaning you can't instantiate an instance of the class) see the second and third paragraphs in the Description section on the documentation page to which I linked.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!