我把构造方法删除程序也可以运行呀作者: wanggang 时间: 2013-3-13 14:40
嗯,当然可以运行了,因为每个类都有一个无参的构造方法,只要不是抽象类,基本上就不用写作者: HM王琦 时间: 2013-3-13 14:48
private WeekDay1(){}//构造方法是用于对类的初始化,同样这里的构造方法是初始化WeekDay1这个类的,只不过这是一个空的构造方法,没有内容。
而且它被private修饰,只能被本来对象调用。
public final static WeekDay1 SUN=new WeekDay1();//创建对象SUN用final修饰,不能被修改,而且是静态的,是随类的加载而加载。这样创建的几个对象,枚举也是这种原理。作者: 437857487 时间: 2013-3-13 16:56
自动的做一些初始操作,让你的对象真正成为可用的有意义的对象,把对象的基本初始操作封装起来,这也是OO的基本特征。作者: 戴乾刚 时间: 2013-3-13 17:37
将构造方法私有,不让创建新对象,只能获取你定义好的对象。
枚举的概念不就是某一类型只能使用你自己定义好的对象,不能创建新对象么作者: 樊玲 时间: 2013-3-13 17:39
public class WeekDay1 {
private WeekDay1(){}//这里为什么要建一个构造方法,作用是什么? //这里的构造函数被private修饰,可以防止外界创建对象。 使程序更安全。
//当然去掉这个构造函数也可以运行。虚拟机会默认有一个无参构造。只不过外界就可以 / /随意来创建对象。这就好像一件东西是属于我们自己的。我们不希别人随意来用。就用到private 封装起来,你想用的话,由我来提供一种方式。
public final static WeekDay1 SUN=new WeekDay1();
public final static WeekDay1 MON=new WeekDay1();