Wow I thought that beach2 was a pointer.
Okay I'm sorry to tell you that I don't think your code is going to work since checkNextLevel(); is called when beach1 is initialized ("created" I guess you can call it that). To keep checking for this you can actually put an act method in your world class and it will work the same way as the actors.
Btw make class names with capital in the start. Makes your code easier understanding :)
The constructor for objects of any class is only executed one time (at the time of its creation). Placing a command (like 'checkNewLevel') there will not be continuously executed (you need to continuously check to see if the new level is valid to go to). This needs to be done in an 'act' method: