This paper addresses the multi-objective optimization problem in flexible job-shop scheduling, es-tablishing a model that optimizes completion time, total machine load, and energy consumption. An improved version of the Non-dominated Sorting Genetic Algorithm II (NSGA-II) is proposed. This algorithm is designed with multi-objective optimization in mind, featuring a population initializa-tion method for multiple objective functions that enhance the quality and diversity of the population. It also introduces an adaptive crossover and mutation operator, incorporating evaluation during the crossover and mutation process to raise the quality of the offspring. An experience-based im-proved elite preservation strategy has been designed to prevent the reduction of population diver-sity in the later stages of evolution while protecting high-quality individuals from degradation during the genetic process. The results demonstrate that the advantages of this algorithm can more effectively solve the multi-objective flexible job-shop scheduling problem.