2 dzq boyka Dzq_Boyka 于 2016.04.25 21:09 提问

java变量修饰符问题,大神来回答啊

如下图:为什么方法中的变量只能用final修饰?
图片说明

7个回答

q610098308
q610098308   2016.04.25 21:39
已采纳

1.方法内没有公有的,私有;全是局部变量;
2.公有,私有成员是针对类的;

你可以这么写
public class Test{
public int c = 0;
public int b = 0;
private a = 0;

    public void fun()
    {
        //这里面全是局部变量,方法运行完就,回收了;
            int a1 = 1;

    }

}

q610098308
q610098308 看这里,其实我对java 了解也不是太多,c/c++用的比较多。
大约 2 年之前 回复
q610098308
q610098308 http://baike.baidu.com/link?url=otli5vH-lC6ng0YmSTP6SHIsnFbwrMCZLxLcd6Dt7Oz3k_kXeRGQPN1M9bXkNKok32dmBWMeFJXIOqZ62jlKSq
大约 2 年之前 回复
Dzq_Boyka
Dzq_Boyka 嗯,谢,能讲一下,常量池就更好了
大约 2 年之前 回复
Fire__Star
Fire__Star   2016.04.25 22:09

赞同3楼。首先:方法如果一运行完里面的所有变量都会被回收,但是除了final除外。你应该知道吧。final是保存在方法区常量池里面。不会随方法的调用
完成而消失。所以final修饰的普通方法变量是能通过编译的。第二点:但是你再反思一下。final修饰的变量在方法调用完后。是还能再用的。但是你如果
你在方法完后。你还想用public/private/static等修饰的普通方法变量,这还能用吗?显然不能。那你用public,private,static修饰变量也就没有意义了。
你应该懂吧?第三:public修饰是想在其他地方用。当static修饰方法时是想通过类名直接调用方法其中包括全局静态的变量。但你这个显然不能通过类名
查看吧。private修饰的全局变量是只能让本类用其他类不能用。但你觉得知道。如果普通方法里面定义了一个变量int a=10;其他方法还能用吗?显然不能
那private也就在这方法里面没有意义了。总结:private,static,public等在方法里面修饰变量是没有意义的,除了final;

weixin_39168541
weixin_39168541 赞一个,介绍的挺好
大约一年之前 回复
Fire__Star
Fire__Star 哎,楼主能懂就好
大约 2 年之前 回复
Dzq_Boyka
Dzq_Boyka 辛苦,打这么多字!
大约 2 年之前 回复
CSDNXIAOD
CSDNXIAOD   2016.04.27 14:22

java中有关“变量”内存分配问题
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

hcb9291
hcb9291   2016.04.25 21:20

这个问题我也不是很清楚,但是可以参考一下这个说法,java中的修饰符

Dzq_Boyka
Dzq_Boyka 嗯,谢兄弟,不过我想问的,不是修饰符这么简单
大约 2 年之前 回复
danielinbiti
danielinbiti   Ds   Rxr 2016.04.25 21:25

方法内不能用public private static修饰符

Dzq_Boyka
Dzq_Boyka
大约 2 年之前 回复
xuandaijian
xuandaijian   2016.04.25 21:46

修饰符不是放在方法内的

Dzq_Boyka
Dzq_Boyka
大约 2 年之前 回复
baidu_23086307
baidu_23086307   2016.04.25 22:34

一句话内部类想用外部类的变量,必final

baidu_23086307
baidu_23086307 哈哈哈,一起加油
大约 2 年之前 回复
Dzq_Boyka
Dzq_Boyka 有道理
大约 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
【Java】Java中的修饰符顺序
说明 Java中的修饰符出现在字段声明中时的顺序与FieldModifier一致,这是习惯顺序,形成规范 使用情况 实例变量:[修饰符]  数据类型  名称  [=初值] 方法:[方法修饰符]  返回类型  名称( [参数列表] )  [throws 异常类列表]  {} 七种实例变量的的修饰符 FieldModifier顺序(oracle习惯顺序) public、p
四个修饰符到底有什么区别?
四个修饰符的区别
java修饰符范围
<br />类 :<br />  java中类的修饰符有以下几种:private 、default(package)、protect、public,其范围如下表:<br />范围privatedefaultprotectedpublic同一类√√√√同一包中的类 √√√同一包中的类、不同包中的子类  √√所有   √<br /> <br />补充:还有final、和abstract修饰符:<br />final修饰的类不能被继承,没有子类。<br />abstract修饰的类不能被实例化,必须被子类继承。类
3分钟弄明白JAVA三大修饰符
3分钟弄明白JAVA三大修饰符 JAVA的三个修饰:static,final,abstract,在JAVA语言里无处不在,但是它们都能修饰什么组件,修饰组件的含义又有什么限制,总是混淆。所以来总结对比一下。 1 static静态修饰符 static修饰符能够修饰属性,方法,初始代码块。不能修饰局部变量和类。 首先要明白属性分为静态和非静态,静态的称为静态属性,又叫类
java方法中变量的修饰符
java方法中变量的修饰符问题 在java的方法中对于变量只有两个修饰符: 1.是缺省的,即什么都不写,这是一个普通的变量,必须为其设置初始值。 2.是用final来修饰,final定义类表示类不可以被继承;定义方法不可以被重载;定义变量表示变量值不可以被改变。
Java的访问修饰符的作用范围
访问修饰符:private 缺省 protectedpublic作用范围
java接口里的变量和方法修饰符
java里面变量的修饰符默认  public static final,所以可以省略,而且必须显示初始化。 例如在接口里面定义的变量:public static final int a=1;                                 x相当于:int a=1; static修饰的变量,如果有数据需要被所有变量共享时,就用static修饰, 用static修饰的变量可以
Java 四种级别的修饰符
搬家后的博客链接: IT客栈 www.itkezhan.org  public,protected,default,private,这四种级别的修饰符都可以用来修饰类、方法和字段。 ----------------------------------------------------------------------------------------
JAVA修饰符-类、变量、函数
首先明确一点:访问权限时在类级别上的而不是对象级别。就是说访问权限都是从写类的代码的角度来分析的,举个例子 public class Num{ private int a; public int add(Num num){ return a+num.a;//这里的num对象的private变量
java修饰符作用范围
在说明这四个关键字之前,我想就class之间的关系做一个简单的定义,对于继承自己的class,base class可以认为他们都是自己的子女,而对于和自己一个目录下的classes,认为都是自己的朋友。1、public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用2、private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接