A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/*
        构造方法:

        1.构造方法,就是当实例化一个对象时,会调用的一个方法;
        2.我们之前没有写过构造方法,系统给我自动添加一个什么都不做的构造方法;
        3.构造方法的写法:
                [访问修饰符] 构造方法名([形参列表]){
                }
       
          注意:
          1.访问修饰符,我们现在先不写;
          2.不可以指定"返回值类型"甚至是void;
          3.构造方法名要跟类名完全相同,大小写要一致;
          4.形参列表:可以没有。如果有,跟方法的形参列表定义一样;
        4.构造方法是在每次"实例化此类对象时"被调用一次,之后将不会再次被调用;
        5.构造方法的作用:
                1).由于它是在实例化此类对象时被调用,所以一般做一些初始化的工作。
                        例如:初始化成员变量;
        6.构造方法可以没有,系统会自动添加一个什么都不做的构造方法;
          构造方法也可以有一个,那么意味着此时构造此类的对象只能通过这一种方式;
          构造方法可以有多个,那么意味着可以有多重方式去构造此类对象。这叫:构造方法的重载。方法名一样,参数列表不完全相同;
        7.如果我们编写了构造方法,那么系统将不会再添加默认的构造方法;
        8.尤其注意:如果一个类,只有一个构造方法,而且需要参数,那么,实例化此类的对象时,就必须拿着参数调用这个构造方法,别无他途。
*/
class Student
{
        String stuName;
        int age;
        Student(){
                System.out.println("你实例化了一个Student对象");
                stuName = "[匿名]";
                age = 18;
        }
        //重载构造方法。带两个参数的构造方法
        Student(String s , int a){
                stuName = s;
                age = a;
        }
        Student(String stuName){
                this.stuName = stuName;
        }
        Student(int age){
                this.age = age;
        }
        void show(){
                System.out.println("大家好,我叫:" + stuName + ",我今年:" + age);
        }
}
class Demo
{
        public static void main(String[] args)
        {
                Student stu = new Student();
                stu.stuName = "刘德华";
                stu.age = 20;
        //        stu.show();

                Student stu2 = new Student("刘德华",25);//一步:构造,并为属性赋值
                stu2.show();


               




        }
}


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马