帮我解译一下这段申明“private static String foo(final String name)”

Yanbin_Q 2003-10-10 11:20:04
private static String foo(final String name)

1、既然申明了私有的为什么还要申明为静态,私有了就只有在类里调用,等于是类的方法?
2、参数中的final有什么特别的意义吗?
...全文
92 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Yanbin_Q 2003-10-10
  • 打赏
  • 举报
回复
第二个问题我理解了,就是防止参数在方法体内被改动,得不到期所期望的结果

但是第一个问题我还是不清楚!

jdk的源码中很多这种样子的东西。
pleonheart 2003-10-10
  • 打赏
  • 举报
回复
从来没用过这样的方法,学习!
wzrlover 2003-10-10
  • 打赏
  • 举报
回复
1.方法的访问属性和静态与否没有关系吧!私有与是否是类方法没有关系吧!
2.final 相当于name是字符串常量,不可重新赋值!
jokerjava 2003-10-10
  • 打赏
  • 举报
回复
1 声明成静态可以被声明成public的static方法调用
2 为了防止 name = "asd"; 这种情况出现
就是不能把name指向另一个字符串
realzealy 2003-10-10
  • 打赏
  • 举报
回复
声明为static是为了类在运行之前就提前载入,就是说静态方法的调用不用先生成这个包含这个方法的class的实例,可以用类名直接调用,classname.staticmethod(classname是类名,staticmethod是你的静态方法) 这种形式调用
私有化以后的确只能在自己的类中使用,其他类无法调用
iamwls 2003-10-10
  • 打赏
  • 举报
回复
问的好,我等高手来回答,估计。。
Yanbin_Q 2003-10-10
  • 打赏
  • 举报
回复
OK、我明白了。我没想到被静态方法调用的问题。
jokerjava 2003-10-10
  • 打赏
  • 举报
回复
public static String foo(String name) {
//如果我调用私有方法foo2
//foo2必须声明成static 这是必须的
foo2(name);
...
}

private static String foo2(String name) {
...
}


62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧