I want to subclass a UITableView as I want to create a reusable table view component in my application.
The idea is instead of using a delegate for say cellForRowA
If I understood you, you need this class declaration:
@interface ShareUITableView : UITableView 
 
And then, in your class constructor, you should assign the instance itself as its own datasource:
- (id)init
{
    //...
    self.dataSource = self;
    //...
}
Of course, the class will have to adopt the protocol.
Good luck!