黑马程序员技术交流社区

标题: 构造方法私有化的解决办法! [打印本页]

作者: 花千骨    时间: 2015-7-16 22:10
标题: 构造方法私有化的解决办法!

//构造方法私有之后,怎么使用Teacher类中的属性和方法?给name和age赋值?

class Teacher {
        private String name ;
        private int age;
        private static Teacher t = new Teacher();        //在类的内部实例化对象。

        private Teacher(){}                                                        //构造方法被私有,不能直接在其他类中new一个对象。

        public void setName(String name){
                this.name = name;
        }
        public String getName(){
                return name;
        }

        public void setAge(int age){
                this.age = age;
        }
        public int getAge(){
                return age;
        }

        public static Teacher getT(){
                return t;
        }                                                                                //返回在类内部实例化的对象。
        public void show(){
                System.out.println(getName()+"***"+getAge());
        }
}
class TeacherTest {
        public static void main(String[] args){
                Teacher t1 = Teacher.getT();                //将实例赋值给新创建的对象。
                t1.setName("林青霞");
                t1.setAge(26);
                t1.show();                                                        //使用类内部的成员。
        }
}

作者: 以梦为码    时间: 2015-7-16 22:13
你怎么弄的才一天就四分了?求指导
作者: 453203489    时间: 2015-7-16 22:18
构造函数私有化应该是单例的基本要求之一,  用另外的方法来取得对象实例就好了。
作者: 花千骨    时间: 2015-7-16 22:31
以梦为码 发表于 2015-7-16 22:13
你怎么弄的才一天就四分了?求指导

我昨天刚注册的,用黑马币换呀,你都43个黑马币了,可以换5个了。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2