I always notch mine, using an eight inch skill worm drive and a sawzall. Much stronger and more stable when notched. I also double the front edge, one 2x4 on the notch outside, and one inside just bolted on (since there isn't enough space for a notch there). A couple of pieces of scrap between the two and that makes the front edge very stable and strong.
I use old steel computer flooring for my bench tops now, but in the past I always used 2x6 or 2x8s, with a layer of ply on top for a smooth surface. Makes the top strong.