单项选择题

下列有关面向对象的构造方法说法正确的是()

A.所有类都必须定义一个构造方法
B.构造方法必须有返回值
C.构造方法必须访问类的非静态成员
D.构造方法可以初始化类的成员变量