I'm glad you included more detail about your thinking, because it helps explain your confusion.
I found the page you're working
here.
Understanding the bike1 and bike2 results requires the Bicycle class:
class Bicycle {
int cadence = 0;
int speed = 0;
int gear = 1;
void changeCadence(int newValue) {
cadence = newValue;
}
void changeGear(int newValue) {
gear = newValue;
}
void speedUp(int increment) {
speed = speed + increment;
}
void applyBrakes(int decrement) {
speed = speed - decrement;
}
void printStates() {
System.out.println("cadence:" +
cadence + " speed:" +
speed + " gear:" + gear);
}
}
bike1 and bike2 are both instances of Bicycle. Both bike1 and bike2 have the same number of methods as Bicycle (5, can you name them?). The initial states of bike1 and bike2 are exactly the same and defined by the Bicycle class fields, cadence, speed, and gear.
The final states of bike1 and bike2 are different, because bike1 and bike2 both have their own copies of the fields cadence, speed, and gear, and some of those fields are acted upon differently by the Bicycle class' methods. Since you're interested specifically in the differences in the speed, you should review the Bicycle.speedUp() method and then compare the bike1.speedUp() calls to the bike2.speedUp() calls to understand why the final speeds of bike1 and bike2 are different.
Let us know if you still don't get it. This is a key point to understanding OOP, by the way, so don't move on UNTIL you get it.