A.硝酸在水溶液中电离方程式为:HNO3═NO3-+H+有自由移动的硝酸根离子和氢离子能导电,是化合物,所以是电解质,故A错误;
B.氯气和水反应生成盐酸和次氯酸,所以氯气的水溶液导电,氯气是非金属单质,所以它既不是电解质也不是非电解质,故B错误;
C.NH4NO3 在水溶液中或熔融状态下能完全电离出自由移动的阴阳离子而导电,是电解质,故C错误;
D.SO2常温下为气体,只有SO2分子,没有自由移动的离子,故不导电,SO2在水溶液中与水反应,生成亚硫酸,亚硫酸电离出自由移动的离子,溶液能够导电,但自由移动的离子不是SO2自身电离,SO2是化合物,所以SO2是非电解质,故D正确;
故选:D.