The 23-year-old midfielders were both named in the original squad but coach Joachim Loew has opted to take Bayer Leverkusen's Lars, who is a more regular feature for club and country, with Borussia Dortmund's Sven left behind.
The Cacau omission means Loew will travel to Poland and Ukraine with only two out-and-out strikers in Mario Gomez and Miroslav Klose, although several of Germany’s midfielders operate in more advanced roles, such as Bayern Munich’s Thomas Mueller and Dortmund’s Mario Goetze.
"I knew from the start that there would be a lot of competition," Cacau, who was part of the 2010 World Cup squad but lost his starting spot at VfB Stuttgart this season, said.
"Like the younger players I am also very disappointed but still feel part of the team and wish them from the bottom of my heart to play a great Euro."
Loew also left 20-year-old Borussia Moenchengladabach goalkeeper Marc-Andre ter Stegen at home after he conceded five goals in the 5-3 friendly defeat by Switzerland on Saturday.
"I am obviously disappointed. But the defeat on my international debut was an important moment in my career and I hope to get the chance again," Ter Stegen said.
Germany are in Group B and play Portugal in Ukraine's Lviv on June 9 before facing Netherlands and Denmark.
Defenders: Holger Badstuber (Bayern Munich), Jerome Boateng (Bayern Munich), Benedikt Hoewedes (Schalke 04), Mats Hummels (Borussia Dortmund), Philipp Lahm (Bayern Munich), Per Mertesacker (Arsenal), Marcel Schmelzer (Borussia Dortmund);
Midfielders: Lars Bender (Bayer Leverkusen), Mario Goetze (Borussia Dortmund), Ilkay Guendogan (Borussia Dortmund), Sami Khedira (Real Madrid), Toni Kroos (Bayern Munich), Thomas Mueller (Bayern Munich), Mesut Ozil (Real Madrid), Lukas Podolski (Cologne), Marco Reus (Borussia Moenchengladbach), Andre Schuerrle (Bayer Leverkusen), Bastian Schweinsteiger (Bayern Munich);
Forwards: Mario Gomez (Bayern Munich), Miroslav Klose (Lazio)