黑马程序员技术交流社区
标题:
静态方法的问题
[打印本页]
作者:
李长波
时间:
2012-11-13 18:59
标题:
静态方法的问题
本帖最后由 李长波 于 2012-11-13 19:36 编辑
通过类名直接访问方法一定是静态方法吗?
但
class Outer
{
public static void method()
{
System.out.println("====");
}
}
class InnerClassDemo
{
public static void main(String[] args) {
Outer.method();
}
}这个能编译通过,什么时候可以用类名直接访问方法了?
作者:
张学永
时间:
2012-11-13 19:25
只要是静态成员都可以被类名直接调用的,当然包括静态方法了,此外还有静态变量。
class Outer
{
public static void method()//此处是定义了一个静态方法,它是Outer的一个静态成员,可以直接被类名调用,该方法被共享
{
System.out.println("====");
}
}
class InnerClassDemo
{
public static void main(String[] args) {
Outer.method();
}
}这个能编译通过是理所当然的了,因为你用Outer调用了它自己的静态成员。
当功能内部,没有访问到非静态数据的时候,就可以把该功能定义为静态方法了。
作者:
李长波
时间:
2012-11-13 19:32
张学永 发表于 2012-11-13 19:25
只要是静态成员都可以被类名直接调用的,当然包括静态方法了,此外还有静态变量。
class Outer
{
理解了!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2