问答详情
源自:8-9 Java 中的 static 使用之静态方法

在类中创建的对象aa是非静态的 而main函数中的对象cc是静态的 对象也有静态和非静态之分?? 求指点

public class Testt

{

     static int a = 0;

     int b = 12;

     Testt aa = new Testt();

     public static void main(String[] args)

    {

     Testt cc = new Testt();

     System.out.println(cc.b);

    System.out.println(aa.b);  //这个错的? 提示:不能对非静态字段aa进行静态引用

     System.out.println(cc.a);   //对的

     System.out.println(a);

     }

}

 //对象也有静态和非静态之分?

提问者:Bad__Guy 2015-07-03 18:18

个回答

  • 空灵_哈哈
    2015-07-05 10:29:11
    已采纳

    static可以修饰属性和方法,这样修饰的属性和方法就都是静态的,有这样的规则:静态方法中只能调用静态属性和方法,这段代码中,a是静态变量,main方法是静态方法,所以main方法中Testt类型的cc对象调用的属性只能是静态的

  • Bad__Guy
    2015-07-05 15:37:57

    对不起 我没对我的程序实践运行!Testt aa=new Testt();这段代码直接在类中实例对象,运行时是会报错的!