add constructor class and overloading