initial protected class with protected constructor by using reflect