Future perfect is used to talk about things we will have completed at some point in the future. This is how it is formed:
will (not) + have + past participle
When using the future perfect, imagine yourself at some point in the future thinking about something that will be completed by that same time (in the future). For example:
Rajesh has 50 reports to write.
He wrote 15 reports this week.
He will write 10 more reports next week.
By the end of next week, he will have written 25 reports.
That's how future perfect works.
The clauses are interchangeable, so that last sentence can also be written like this: "He will have written 25 reports by the end of next week." Note there is no comma (,) this time because it is not needed.
This tense is most often used with by + time, but can also be used with on + date. Let's use Raj again as an example.
Rajesh started working for ABC Company on August 31st.
On December 31st, He will have worked for this company for four months.
(Or, Raj will have worked for this company for four months on December 31st.)
Finally, you can use the future perfect with when to describe something that will have happened before something else happens. When using the future perfect in this form, use this format:
will + have + past participle...,... when + simple present
We will have eaten dinner when you get here.
"By the time you get this message, I will have already left."
"On July 31st, I will have lived in Malaysia for ten years."
"Abe won't have finished his presentation when the Board arrives."