Using Adafruit_ADS1115/Wire object in a custom class

public:
 const float pdFactor;
 float voltage, current;
 int averagingWindow, voltagePin, currentPin;

NONE of those should be public. Provide getters for values that you think the public needs access to.

Battery battery(3.504943957968f, 1000, A1, A0);

Think about all the things that are supposed to happen as a result of this.

Serial.print() before Serial.begin() is silly. So is ads1115.readADC_SingleEnded() before ads1115.begin().

Your constructor is doing WAY too much, and in the wrong order.