黑马程序员技术交流社区

标题: this关键字调用构造方法 [打印本页]

作者: 顾浩    时间: 2015-6-13 22:51
标题: this关键字调用构造方法
谁能解释下 具体的呢 最好是代码加注释的  求助!!!!


作者: 守护莹到老    时间: 2015-6-13 22:56
真的没黑马币
作者: msxhm    时间: 2015-6-13 22:59
我过来赞赞~~
作者: dcw2015    时间: 2015-6-13 23:02
this调用构造方法的格式是:this();//调用无参构造  this(参数娄型1 变量名1,参数娄型2 变量名2)//调用带参构造,参数娄型和个数要看对应的构造方法 需要注意的是,一个娄中如果没有定义构造方法,虚拟机会默认给一个无参构造,只要自己定义了构造方法,不管有参还是无参,虚拟机都不会再给出构造方法,所以以后自己在编写程序的时候最好自己手动给一个无参构造以防后面创建对象时报错。
作者: 暗羽部落    时间: 2015-6-13 23:05
守护莹到老 发表于 2015-6-13 22:56
真的没黑马币

我有。想要吗?
作者: 罗韬    时间: 2015-6-13 23:22
/**
    赞一个!
*/
作者: yijiandeai    时间: 2015-6-14 11:14
this是指向调用该方法,或变量的对象
作者: 痞子刘忙    时间: 2015-6-14 18:07
this就是为了区分成员变量和局部变量,this只作用于成员变量。
作者: 暗羽部落    时间: 2015-6-15 01:01
手机没法给啊
作者: 李俊超    时间: 2015-6-15 09:26
this 关键字 在本类之功能使用,为了区分变量和局部变量同名的情况下使用.在方法的第一行.
我们就拿学生类来探讨下:

代码实现:
//学生测试类
public class StudentDmeo {
        public static void main(String[] args){
                //创建学生类实例对象stu.
              Student   stu = new Student();
               //使用学生传参构造方法,调用Say()方法.
              stu.Say("小黑",26);
            }
}
//定义学生类
class Student{
    //成员变量
    String name;//如果pirvate,需要提供get()/set()方法才能访问.
    int  age;//同上;
    //构造方法
    public Student(){}
    public Student(String name,int age){
          this.name = name;//this 表示传入参数的值等同于调用对象的值.谁调用就赋值于谁.
          this.age = age;
   }
    //方法
   public  void  Say(String name, int age){
      System.out.println("name="+name+"age="+age);
    }
}



作者: rose_xiaomei    时间: 2015-6-16 00:13
这帖子很high...




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