Rules are different now. At least for the NBA and NFL.
NBA you must be 19 y/o.
NFL you must be three years out of high school (21 y/o)
Those rules changed to keep the NCAAs monopoly on just-out-of-High School players. No better deal in town, if they can’t play pro ball.