相关其变量,方法,代码块,内部类等用法,有点模糊。

解决方案 »

  1.   

    1、自动命名:
    package org.lxh.staticdemo;class Person1 {
    private String name; private static int count; public Person1() {
    count++;
    this.name = "NONAME--" + count;
    } public Person1(String name) {
    this.name = name;
    } public String getInfo() {
    return "姓名:" + this.name;
    }
    }public class StaticAutoNameDemo {
    public static void main(String args[]) {
    System.out.println(new Person1().getInfo());
    System.out.println(new Person1().getInfo());
    System.out.println(new Person1("A").getInfo());
    }}
    2、计数:
    package org.lxh.staticdemo;class Person {
    private String name; private static int count; public Person() {
    count++;
    System.out.println("产生了第" + count + "个实例化对象!");
    } public String getInfo() {
    return "姓名:" + this.name;
    } public String getName() {
    return name;
    } public void setName(String name) {
    this.name = name;
    }
    }public class StaticCountDemo {
    public static void main(String args[]) {
    Person per1 = new Person();
    Person per2 = new Person(); per1 = null;
    per2 = null; Person per3 = new Person();
    Person per4= new Person(); }}
    3、静态导包!
    4、静态块:
    package org.lxh.daimakuaidemo;class StaticKuai {
    {// 构造块
    System.out.println("=========构造块==========");
    }
    static {// 静态块:使用Static声明的代码块,主要为了静态属性初始化
    System.out.println("=========类中的静态块==============");
    } public StaticKuai() {
    System.out.println("==========构造方法================");
    }
    }public class StaticKuaiDemo {
    static {
    System.out.println("===========主类中静态块===============");
    } public static void main(String args[]) {
    new StaticKuai();
    new StaticKuai(); }}//说明了主类中的静态块优先与类中的静态块,(主)静态块优先于构造块,静态块也优先与主方法,
    //并且静态块只执行一次
    /**
     * ===========主类中静态块===============
    =========类中的静态块==============
    =========构造块==========
    ==========构造方法================
    =========构造块==========
    ==========构造方法================
     */
      

  2.   

    class A {
        static int xx = 0; //静态变量
         int kk = 1; //非静态变量
         public static void main(String[] args) { //静态方法
            xx = 1; //静态成员可以直接访问(也就是不需要实例)
             tt(); //静态方法可以直接访问 
             B = new B(); //静态类内部类可以直接访问
             A a = new A(); //创建实例
             a.kk = 2; //通过实例访问非静态成员
            a.qq(); //通过成员访问非静态方法
             C = new a.C(); //通过成员访问非静态内部类
        }    static void tt() {
            System.out.println("静态方法");
        }
        
        void qq() {
            System.out.println("非静态方法");
        }    static {
            System.out.println("静态代码块,类加载时调用");
        }    {
            System.out.println("非静态代码块,类实例化时调用");
        }    static class B {
            public B () {
                System.out.println("静态内部类");
            }
        }    class C {
            public C() {
                System.out.println("非静态内部类");
            }
        }
    }
      

  3.   

    可以创建这样一个成员,它能够被它自己使用,而不必引用特定的实例。在成员的声明前面加上关键字static(静态的)就能创建这样的成员。如果一个成员被声明为static,它就能够在它的类的任何对象创建之前被访问,而不必引用任何对象,你可以将方法和变量都声明为static
      

  4.   

    1)类中static定义的变量或方法,都是类的变量和方法,不需要实例化就可以使用
    2)static定义的方法中不能使用非static的变量
      

  5.   

    1)java se 5.0静态导入 import static 
    2)用于静态数据成员或方法
    3)用于静态块
      

  6.   

    用static就表示静态成员  是可以不用实例化对象直接调用的.
      

  7.   


    不得不说你后面总结得很乱..哎
    什么"主类" 叫超类好不1)超类的静态数据成员或静态块按定义顺序
    2)本类的静态数据成员或静态块按定义顺序
    3)超类的数据成员 或非静态块按定义顺序
    4)超类的构造函数,或隐式默认或按子类构造函数中指定的super()带相关参数
    5)子类数据成员或非静态块按定义顺序
    6)子类的构造函数
      

  8.   


    import static java.lang.System.out;public class Test {
    public static void main(String[] args) {
    out.print("adfads");

    }
    }
    静态导入!!!!!!!!!!!!!!