javathis赋值
❶ java 赋值取值
第一:因为B类中的cDCost方法是新建的A类,而默认的A类中的a,b是未赋值的,int默认值为0,所以结果才会显示为0
第二:因为A类中的aBCost方法本身会输出"A类中的成本=某值"
第三:B要基于你的A类,可以构造B时,给B中的A赋值。如下:
publicclassB{
//其他不变,添加下面这个变量
privateAa;
//删除原构造函数,添加新构造函数
publicB(Aa){
this.a=a;
}
//修改cDCost函数如下
publicintcDCost(){
intcCost=c*10;
intdCost=a.aBCost();
//下同
}
}
❷ java 给对象变量赋值this
是的 这是合法的
静态工厂就是这种
❸ java中的this具体该如何使用呢
this指当前类,this.name就是当前类的name属性;
this.name="张三";译作对当前类属性name赋值张三;
还能取当前类的方法等,主要是指明某个属性、方法来源,代码可读性增强
❹ java类怎样赋值
类怎来样赋值?类中包括变自量,属性和方法,它只会被用来实例化对象后,才会赋值。比如:
public A{
String c;
private void b(){
private String getC(){
return c;
}
private void setC(String c){
this.c=c;
}
}
A a=new A();
a.c="123";
❺ java 中this的用法
用this可以调用本类的属性,方法,构造方法,
this(x,y,0)是用来调用public
Point3D(int
x,
int
y,
int
z)这个构造方法的,这个时候本类的3个属性就都有值了:x,y是外来传入的值,z的值直接就是0了!
为什么要用this.x=x
,this.y=y
,
this.z=z,是为了区分外来的值名与本类下属性名的重名,this.x就是调用的属性!
还可以调用方法,如:this.方法名(),这样就调用本类下的这个方法!
❻ Java:关于Java中的this,这里为什么加不加都一样呢
this是指的对象本身,通过this可以调用本对象拥有的所有方法和属性,当然不加this也可以调用。
一般用this的情况:
当局部变量与成员变量相同名时,例如 this,x = x;this.x 是个成员变量,而x是个局部变量
在myeclipse下用this可以提示后面的方法或者成员变量
在内部类或匿名内部类中使用this来指向内部类本身
将类本省作为参数传递
❼ java中this的用法
一、指自己所在的对象。
比如在一个方法中,调用其他对象的变量或方法时,可以使用那个对象的对象名,比如aa.abc();
而调用自己所在对象的方法或变量时,不知道别人给起了什么名,所以直接用this.abc()就可以了。
二、看一个小例子中“this”的用法!
/**
* @author feng-neusoft
*
* 本示例为了说明this的三种用法!
*/
package test;
public class ThisTest {
private int i=0;
//第一个构造器:有一个int型形参
ThisTest(int i){
this.i=i+1;//此时this表示引用成员变量i,而非函数参数i
System.out.println("Int constructor i——this.i: "+i+"——"+this.i);
System.out.println("i-1:"+(i-1)+"this.i+1:"+(this.i+1));
//从两个输出结果充分证明了i和this.i是不一样的!
}
// 第二个构造器:有一个String型形参
ThisTest(String s){
System.out.println("String constructor: "+s);
}
// 第三个构造器:有一个int型形参和一个String型形参
ThisTest(int i,String s){
this(s);//this调用第二个构造器
//this(i);
/*此处不能用,因为其他任何方法都不能调用构造器,只有构造方法能调用他。
但是必须注意:就算是构造方法调用构造器,也必须为于其第一行,构造方法也只能调
用一个且仅一次构造器!*/
this.i=i++;//this以引用该类的成员变量
System.out.println("Int constructor: "+i+"/n"+"String constructor: "+s);
}
public ThisTest increment(){
this.i++;
return this;//返回的是当前的对象,该对象属于(ThisTest)
}
public static void main(String[] args){
ThisTest tt0=new ThisTest(10);
ThisTest tt1=new ThisTest("ok");
ThisTest tt2=new ThisTest(20,"ok again!");
System.out.println(tt0.increment().increment().increment().i);
//tt0.increment()返回一个在tt0基础上i++的ThisTest对象,
//接着又返回在上面返回的对象基础上i++的ThisTest对象!
}
}
运行结果:
Int constructor i——this.i: 10——11
String constructor: ok
String constructor: ok again!
Int constructor: 21
String constructor: ok again!
14
细节问题注释已经写的比较清楚了,总结一下,其实this主要要三种用法:
1、表示对当前对象的引用!
2、表示用类的成员变量,而非函数参数,注意在函数参数和成员变量同名是进行区分!其实这是第一种用法的特例,比较常用,所以那出来强调一下。
3、用于在构造方法中引用满足指定参数类型的构造器(其实也就是构造方法)。但是这里必须非常注意:只能引用一个构造方法且必须位于开始!
还有就是注意:this不能用在static方法中!所以甚至有人给static方法的定义就是:没有this的方法!虽然夸张,但是却充分说明this不能在static方法中使用!
❽ 【java考试】this赋值的用法[选择题]
这个属于基础问题。
你这个类的名称叫做Base,有两个显式构造方法Base(int a,int b)(以专下简称构属造A)和
public Base(int a, int b, int c, int d)(以下简称构造B),
这个题的意思是要在构造B中对变量x,y进行赋值,也就是 x=a, y=b,而构造A方法中恰好提供了这个解决方案,只要在构造B中调用构造A方法即可。
在java基础中,在构造方法中调用其他的重载构造方法使用的关键字如下:
调用本类的:this()
调用父类的:super()
this字如其意,就是“这个类”的意思,this.x可以读作"这个类的x变量"。调用构造函数就直接用this(你需要调用的构造方法的参数列表).
super表示调用父类的,很多书籍把父类翻译成超类,也是对该词的直接翻译造成的。
具体的你可以多看下面向对象部分的讲解。
❾ java中this的用法问题
this是指对当前对象的引用,例如:
public class Demo{
int a;
public void setA(int a){
this.a = a;//右边的a是setA中参数的a不是版Demo中的a 左边的a 是指Demo中的a,这里的this就是为了区分a是谁的权a 这里也就是把右边的a赋值给左边
}
}
不理解的可以继续追问
❿ 为什么java这赋值操作会改变this的id
一个类的多个实例,当然不行了。搞清楚EmployeeForm在什么时候初始化的,初始化了几次才知道原因。你给这些代码没什么意义。把EmployeeForm初始化并赋值的部分粘贴出来,或许能帮你找找