标题: 关于this()方法的问题. [打印本页] 作者: 朱元强 时间: 2011-9-27 07:22 标题: 关于this()方法的问题. class Demo
{
String name, address;
int age;
public Demo(String n)
{
name=n;
}
public Demo (String n, int a)
{
name = n;
age=a;
}
public Demo (String n,String str,int a)
{
this(name,age);
address= ar;
}
}
为什么此处用this 会报错??作者: 匿名 时间: 2011-9-27 07:38
同学,虽然大家懂不容易,为了进黑马
但是这个也太那个了吧,这都啥呀
public Demo (String n,String str,int a)
{
this(n,a);
address= str;
} 还差不多
构造函数,里使用构造函数时是不可以用自己的成员变量的
public test2 (String n,String str,int a)
{
this(this.name,this.age);
address= ar;
} 不成这样了么 ,而且您还写错了作者: 匿名 时间: 2011-9-27 09:59
class Demo
{
String name, address;
int age;
public Demo(String n)
{
name=n;
}
public Demo (String n, int a)
{
name = n;
age=a;
}
public Demo (String n,String str,int a)
{
this(n,a); //这个地方是调用的public Demo (String n, int a) 构造函数
address= str;
}
}
哥们,我觉得你应该是想这样写的作者: 匿名 时间: 2011-9-28 00:29
这样写我觉得没有什么意义?
但是就为什么会报编译错误,我有自己的看法
public Demo (String n,String str,int a)
{
this(name,age);
address= ar;
}
因为当你使用上面的构造方法创建实例的时候,但是此时还没有创建成功,你就要用一个非静态的成员变量name和age ,非静态的成员变量只能对象采能用,所以为了不报错,把name和age改成static就可以了作者: 匿名 时间: 2011-9-28 08:59
理解this指向的是本类,它能调用本类的成员变量和方法 。作者: 匿名 时间: 2011-9-28 15:35 标题: this的使用 class Demo
{
String name, address;
int age;
public Demo(String n)
{
name=n;
}
public Demo (String n, int a)
{
name = n;
age=a;
}
public Demo (String n,String str,int a)
{
}
}
它这里代码 写的让我看的很别扭!this代表的是本类对象的应用, this(name,age);
address= ar; 为什么这句话会报错!第一点 name age字符串是哪来的
上面定义了3个重载的构造函数! 这不是数学 有替代的作用!
你都没应用这个字符串 怎么会用呢
使用this还有一点 这是我在学android中遇到的问题 当在一个类中定义了匿名内部类的时候使用this的问题
!特别是在匿名内部类方法中使用this是错的 因为它代表的是外部类作者: 匿名 时间: 2011-9-29 15:56
public Demo (String n,String str,int a)
{
this(name,age);
address= ar;
}
public Demo (String n, int a)
{
name = n;
age=a;
}
你的本意是想在构造函数public Demo (String n,String str,int a) 中调用构造函数public Demo (String n, int a) 但是public Demo (String n,String str,int a) 中没有参数name和age.
你可以把 public Demo (String n,String str,int a)
{
this(name,age);
address= ar;
}
改成 public Demo (String n,String str,int a)
{
this(n,a);
address= ar;
}
这样就可以了