例如
public class Test{
private int id;
public int getId(){
return id;
}
public setId(int id){
this.id=id;
}
}
假如,我现在需要用getId()这个方法来做比较。
test.getId()很多地方都需要用到。我不定义一个变量,和定一个变量来使用。有什么区别。
-----------------------------上面是一个实体类,忽略。下面是我想问的-------------------------------
if(test.getId()==1){
}else if(test.getId()==2){
}else if(test.getId() == 3){}
和下面这种写法比较,哪个较好。为什么?(一个把test.getId赋值给了int id的一个变量,一个就直接用test.getId()去做比较,当test.getId()用得比较多的时候,哪种方式比较好)
int id = test.getId();
if(id == 1){
}else if(id == 2){
}else if(id == 3){
}
呵呵,能说说具体点的原理吗。
我想知道他们内部的一些机制是怎样的。如果用得比较多的话,定义一个变量应该是会好点的。但是我不知道他在同一个方法里面,调用相同的属性的时候是重新取,或者还是取原来的。
追答调用一次get就重新取一遍;但是如果用一个局部变量暂存它,那该就只取一次。这里不需要太纠结这个问题,值都是一样的,举个例子吧,向别人借东西,每次调用get的话就是借一次用一次,后者就是借过来用几次再还。
追问我比较关心这个效率和资源占用的问题,倒不是纠结这个get用几次。呵呵。谢谢。
追答各有利弊。用一次取一次,要反复去拿值;取一次存起来,需要申请一个变量空间来保存它。
本回答被提问者采纳实体对象中,有一个get方法我需要多次调用,需不需要定义一个变量,然后...
反正你test.getId()很多地方调用,其实你只需要定义一个属性id然后写上get和set方法,然后掉了无论你怎么比较,什么时候用都不会出问题。所以说你定义一个变量和不定义一个变量关键是看你用的时候的场景。一般一个实体类中有属性的话。就需要提供get和set方法。set是给这个变量设置值,get是拿到id存放...
实体类创建一个对象以后,直接调用get方法怎么没有报空指针错误?_百度...
1、布尔型(boolean)变量默认值为false,byte、short、int、long为0,字符型为'\ '(空字符),浮点型(float double)为0.0,引用类型(String)为null 可以先看看java编程思想前九章
java中一个类想调用另一个类的变量,必须到方法里面吗,直接在类里面能不...
java 不能在类中初始化引用,所以不能直接在类中new一个对象出来,要使用其他类的变量,必须在自己的类的方法中先创建被引用类的实例,通过实例来引用该类的变量,但是,如果被引用的类的变量是静态的,则可以通过如下指令引用:类名.变量 来直接引用这个变量。
在C++中,如果一个函数中有多个变量,在调用后希望全部保留以供继续使用...
可以将变量设置为【全局变量】,使得改变量在整个程序中起作用 当然,也可以设置为【静态变量】,效果是一样的 建议看一下变量的作用域和生存期方面的知识,就会很容易懂了 希望对你有帮助o(∩_∩)o
java的get和set方法
你说出你的名字就调用了你的get方法,反之如果给你取名字调用的就是你的set方法,get和set方法不是一定要必须两者都有,你可以根据实际情况而定。get方法是用来得到对象里属性的值,set方法相反,是用来给对象的属性设值的。get方法一般是得到成员变量的值,set是设置一个成员变量的值 ...
C#中如何在一个窗体中调用另一个窗体控件中的数据?
该例子使用对话框形式调用另一个窗体:Form2 frm = new Form2();frm.ShowDialog();textBox1.Text = frm.textBox2.Text;在上面的代码中,我们实例化了窗体Form2,并调用了ShowDialog()方法将其显示为模态对话框。 然后,我们读取了窗体Form2中textBox2的文本,并将其分配给主窗体中的textBox1。
java怎么调用变量来调用方法?
在Java中,如果要调用一个方法,你可以使用下面的语法:Copy codevariable.method();其中,variable是要调用方法的对象,method()是该对象所对应的方法。例如,假设你有一个字符串变量str,要调用该字符串的toUpperCase()方法来将字符串转换为大写,你可以使用如下代码:str.toUpperCase();请注意,调用方法...
一个类中如何调用另一个类方法中的变量?
方法中的变量如果不是静态的,那么是无法调用的。一个类中调用另外一个类的变量,方法三个,如下:1.如果是静态的变量,那么直接根据:类名.变量名 来调用。2.如果是普通变量,那么要根据:类的对象.变量名 来调用。3.根据get()方法返回这个变量 ...
C# 进行变量定义时为什么要定义一个公有一个私有,两个变量再相互调用啊...
也许你看到的是比较简单的,也就是直接返回return name,但是也有很多场合是需要name经过一些列转换才return的,这当然也可以用一个public的函数来代替,但是Name是属性,name是字段,字段不能公开,属性才能公开,这是面向对象的一种良好的设计。
2个javascript脚本中变量问题
不可以的 如果是在jsp文本中你可以给他返回给一个变量值 通过隐藏文本域写出这个值 然后在第二个js中通过 document.getElementById("").value得到这个值 就可以在第二个脚本中用了