java 在一个类下面 一个函数中的变量,可以被另一个函数调用?

publicvoidchangepic1(){Randomrandom=newRandom();intindex1=1+random.nextInt(7);}另一个函数怎... public void changepic1() {
Random random = new Random();
int index1 = 1+random.nextInt(7);}
另一个函数 怎么直接调用这里的index值??
展开
 我来答
雪风松123
推荐于2017-09-07 · TA获得超过298个赞
知道小有建树答主
回答量:155
采纳率:100%
帮助的人:126万
展开全部
首先,变量是有作用范围和生命周期的,这个你需要明确。
类成员变量:
作用范围,通过关键字来实现,public、private。。。
生命周期,该类被加载实例化后--该类结束
方法成员变量:
作用范围,该方法内部
生命周期,随着方法的生命周期
故此,一个函数的变量是否可以被另外一个函数使用,得看该变量的具体范围和生命周期
fuyunzheyan
2012-06-22 · TA获得超过249个赞
知道小有建树答主
回答量:154
采纳率:0%
帮助的人:146万
展开全部
//变量是不能被调用的吧,应该被获得他的值
//你可以调用该变量的函数(方法)以获得该变量的值
//如下是我写的两个例子希望能帮助你理解
import java.util.Random;
public class Test {
/*void修饰的方法是无返回的,你要获得某个方法(函数)的变量值,那么该方法就不能用VOID修饰*/
public int changepic1() {
Random random = new Random();
int index1 = 1+random.nextInt(7);
return index1;
}
public int getChangepic1(){
return changepic1() ;

}
public static void main(String[] args) {
Test t = new Test();
System.out.println("直接调用该方法获得他的值");
System.out.println(t.changepic1());
System.out.println("调用其他方法间接获取到他的值");
System.out.println(t.getChangepic1());;
}

}

import java.util.Random;
public class Test2 {
Random random = new Random();
int index1 = 1+random.nextInt(7);
/* public void changepic1(int index1) {
this.index1 = index1;
}*/
public int getIndex1() {
return index1;
}
public static void main(String[] args){
Test2 t2= new Test2();
System.out.println(t2.getIndex1());
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
修怀芹26
2012-06-25 · TA获得超过1208个赞
知道小有建树答主
回答量:695
采纳率:75%
帮助的人:450万
展开全部
变量是有作用域限制的,一个函数中的变量是无法被另一个函数使用的。
想要达到这种效果,通常是申明为类的成员变量。
public class Test{
private int i;
public void f1(){
i = new Random().nextInt();
}
public void f2(){
int k=i*10;
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
义气的小刺猬40
2012-06-26 · TA获得超过117个赞
知道答主
回答量:99
采纳率:0%
帮助的人:51.3万
展开全部
采用封装那种模式,属性私有,提供一个public的get方法获取这个属性咯,当然如果想更直接调用: public static int index1 = 1+random.nextInt(7); 在别的类里直接:类名.index1就能直接调用了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zjj77582
2012-06-22
知道答主
回答量:43
采纳率:0%
帮助的人:17.5万
展开全部
你说的函数zaijava里应该叫方法吧,原本一个方法是无法直接调用另一个里的变量的,但通过
类(有时可以省略).方法名.变量名 就可以调用了。
希望我的回答对你有帮助
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式