Cell junctions are multiprotein complexes that provide contact between animal cells and maintain barriers between cells. There are five main types of cell junctions: tight junctions, adherens junctions, desmosomes, hemidesmosomes, and gap junctions. Tight junctions form virtually impermeable barriers between cells through fusion of the cell membranes. Adherens junctions provide strong mechanical attachment between cells through linkage to the cytoskeleton. Desmosomes provide strong adhesion between epithelial cells through attachment to intermediate filaments.