Used_in The definition of C++ [ c++.syntax.html ]. Used_in The definition of Java [ java.syntax.html ] Notation This uses my XBNF Extended BNF Notation where | indicates or, (...) indicates priority. For more information see [ intro_ebnf.html ].
To look at it in another way: Thymine(uracil in RNA) and cytosine are pyrimidines. Pyrimidines are single-ringed organic base that will only attach to purines, or adenine and guanine by hydrogen bond. Because cytosine and thymine are both pyrimidines, it cannot form a hydrogen bond with each other.
Perhaps the strongest impetus, though, for the incorporation of thymine into DNA comes from the spontaneous deamination of cytosine. This undesirable chemical reaction results in a uracil base, and occurs, on average, 100 times per day in a mammalian cell.