Specific modifications will depend on the country and type, but in general:
- Adding a method of stopping the plane; typically a tailhook. While some land-based planes have a tailhook which can be used in emergency situations, sources seem to differ on the loads this is rated for. The tailhook on a naval aircraft is rated to stop it on a 300 foot long runway, land-based planes might catch the wire at the start of a runway and then take longer to decelerate for a lower load on the hook.
- Space: Some aircraft are large, so features are added to make then smaller on the deck, such as folding wings or wingtips.
- Adding a method to launch the plane. For some, catapults are used, typically requiring the nose gear to be able to withstand the load at launch. Other aircraft can be launched without catapults using ski-jumps, or simply just on a flat runway in full afterburner.
- Depending on the aircraft, additional lift might be required, requiring larger flaps or bigger wings.
The aircraft structures will be strengthened to account for much harder landings. According to one of the answers to this question, a normal carrier landing has a sink rate of approx. 600-800 feet per minute (FPM). This is in contrast to more normal landings where the goal is somewhere between 60-180 FPM.
This doesn't just impact the landing gear, the frame of the aircraft and every system on the aircraft must be capable of absorbing this added load on a regular basis.
Carrier aircraft get exposed to salty water on a more regular basis than land-based planes. To avoid corrosion the aircraft have to be properly designed for, and treated to avoid it. I couldn't find sources with in-depth details, but I'd expect this to be a never ending task.
Aircraft carriers only have so much space, and sending an aircraft off to a depot for heavy maintenance if something breaks isn't really an option. Getting access to important parts of the aircraft is essential, so a land-based aircraft converted to fly from a carrier is likely to have more inspection panels facilitating access to key components.