Отпуск - this is about a long period of time outside of work. Usually, it lasts 2-4 weeks. This word is used in such collocations: поехать в отпуск (go on a vacation), взять отпуск (take a vacation), быть в отпуске (to be on a vacation).
Каникулы - it is only about learners. ATTENTION! this word is used only in the plural form. Most often you can hear - быть НА каникулах (to be on vacation), у него каникулы (he is on vacation). The key difference between отпуск and каникулы is in an occupation (whether somebody learns or works)
Выходной (выходные) -
1st meaning - The days (not so long as отпуск or каникулы) when you don't work, usually Saturday and Sunday.
2nd meaning - Another day(s) when you don't have to go to work during a working week (day off).
У меня выходной (-ые) - this means that you don't work for a few days. When you talk about future and your plans for a weekend you can say: В выходные я (пойду/поеду/)... or НА выходных я...
отпуск- Long rest for working people
каникулы - Long rest for learners
выходные - 1) Weekend or 2) A few days when you aren't busy and have a rest from work
Отпуск и каниколы тоже выходные?
No, the key difference between выходные and каникулы-отпуск in their duration.