Let's start with the definition of closure as per Swift documentation:
Closures can capture and store references to any constants and variables from the context in which they are defined. This is known as closing over those constants and variables. Swift handles all of the memory management of capturing for you.
Based on the statement above let's write an example to demonstrate it in code:
Whenever you get to use one of the main frameworks abstracted on top of each of these two programming languages you will feel the difference.
They have a very different history and different purposes (of course there are some middle grounds, as a matter of perspective).
Both languages are borrowing syntax and programing methodologies from other programming languages. And that is a good thing.
This is not the topic of this post though.