| preferred AP College board partner for AP classes
medium Solved by 2 students
Static Class Members and Methods
< Prev
Next >

Consider the following class definition.

public class DatabaseConnection {
    private static int maxConnections = 5;
    private static int activeConnections = 0;
    private String connectionID;
    private boolean isConnected;
    
    public DatabaseConnection(String id) {
        connectionID = id;
        isConnected = false;
    }
    
    public boolean connect() {
        if (activeConnections < maxConnections) {
            activeConnections++;
            isConnected = true;
            return true;
        }
        return false;
    }
    
    public void disconnect() {
        if (isConnected) {
            activeConnections--;
            isConnected = false;
        }
    }
    
    public static int getActiveConnections() {
        return activeConnections;
    }
    
    public static boolean canConnect() {
        return activeConnections < maxConnections;
    }
}

What is printed when the following code segment is executed?

DatabaseConnection db1 = new DatabaseConnection("DB1");
DatabaseConnection db2 = new DatabaseConnection("DB2");
DatabaseConnection db3 = new DatabaseConnection("DB3");

db1.connect();
db2.connect();
db1.disconnect();
db3.connect();

System.out.println(DatabaseConnection.getActiveConnections() + " " + DatabaseConnection.canConnect());
A

3 false

B

1 true

C

2 false

D

2 true

Hint
Did You Know?
Explain Why
Explain All Answers
Check Answer
Show Correct Answer

Question Leaderboard

Not enough data yet to show leaderboard.

APFIVE © 2020.
Email: apfive@apfive.org|Privacy Policy