java 初始化

葫芦的运维日志

下一篇 搜索 上一篇

2014/01/02 02:10


//: initialization/OrderOfInitialization.java
// Demonstrates initialization order.
import static net.mindview.util.Print.*;

// When the constructor is called to create a
// Window object, you'll see a message:
class Window {
  Window(int marker) { print("Window(" + marker + ")"); }
}

class House {
  Window w1 = new Window(1); // Before constructor
  House() {
    // Show that we're in the constructor:
    print("House()");
    w3 = new Window(33); // Reinitialize w3
  }
  Window w2 = new Window(2); // After constructor
  void f() { print("f()"); }
  Window w3 = new Window(3); // At end
}

public class OrderOfInitialization {
  public static void main(String[] args) {
    House h = new House();
    h.f(); // Shows that construction is done
  }
} /* Output:
Window(1)
Window(2)
Window(3)
House()
Window(33)
f()
*///:~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//: initialization/StaticInitialization.java
// Specifying initial values in a class definition.
import static net.mindview.util.Print.*;

class Bowl {
  Bowl(int marker) {
    print("Bowl(" + marker + ")");
  }
  void f1(int marker) {
    print("f1(" + marker + ")");
  }
}

class Table {
  static Bowl bowl1 = new Bowl(1);
  Table() {
    print("Table()");
    bowl2.f1(1);
  }
  void f2(int marker) {
    print("f2(" + marker + ")");
  }
  static Bowl bowl2 = new Bowl(2);
}

class Cupboard {
  Bowl bowl3 = new Bowl(3);
  static Bowl bowl4 = new Bowl(4);
  Cupboard() {
    print("Cupboard()");
    bowl4.f1(2);
  }
  void f3(int marker) {
    print("f3(" + marker + ")");
  }
  static Bowl bowl5 = new Bowl(5);
}

public class StaticInitialization {
  public static void main(String[] args) {
    print("Creating new Cupboard() in main");
    new Cupboard();
    print("Creating new Cupboard() in main");
    new Cupboard();
    table.f2(1);
    cupboard.f3(1);
  }
  static Table table = new Table();
  static Cupboard cupboard = new Cupboard();
} /* Output:
Bowl(1)
Bowl(2)
Table()
f1(1)
Bowl(4)
Bowl(5)
Bowl(3)
Cupboard()
f1(2)
Creating new Cupboard() in main
Bowl(3)
Cupboard()
f1(2)
Creating new Cupboard() in main
Bowl(3)
Cupboard()
f1(2)
f2(1)
f3(1)
*///:~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
package javahaonan;

import static javahaonan.Print.*;

class Bowl {
       Bowl( int marker){
               print("Bowl("+ marker + ")");
       }
        void f1(int marker){
               print("f1("+ marker + ") ");
       }
}

class Table{
        static Bowl bowl1 = new Bowl(1);
       Table(){
               print("Table()");
               bowl2.f1(1);
       }
        void f2(int marker) {
               print("f2("+ marker+ ")");
       }
        static Bowl bowl2 = new Bowl(2);
}

class Cupboard{
       Bowl bowl3 = new Bowl(3);
        static Bowl bowl4 = new Bowl(4);
       Cupboard(){
               print("Cupboard()");
               bowl4.f1(2);
       }
        void f3(int marker) {
               print("f3("+marker+ ")");
       }
        static Bowl bowl5 = new Bowl(5);
}
public class StaticInitialization {
        public static void main(String[] args){
               print("Creating new Cupboard() in main");
               new Cupboard();
               print("Creating new Cupboard() in main");
               new Cupboard();
               table.f2(1);
               cupboard.f3(1);
       }
        static Table table = new Table();
        static Cupboard cupboard = new Cupboard();
              
       }
  //*Bowl(1)
Bowl(2)
Table()
f1(1)
Bowl(4)
Bowl(5)
Bowl(3)
Cupboard()
f1(2)
Creating new Cupboard() in main
Bowl(3)
Cupboard()
f1(2)
Creating new Cupboard() in main
Bowl(3)
Cupboard()
f1(2)
f2(1)
f3(1)*/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
package javahaonan;
import static javahaonan.Print.*;
class Rock{
       Rock (){
               printnb("Rock ");
       }
       }


public class SimpleConstructor {
public static void main(String[] args){
        for(int i=0;i<8;i++)
               new Rock();
}
}
//Rock Rock Rock Rock Rock Rock Rock Rock
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 package javahaonan;
class Rock2{
       Rock2( int i){
              System. out.print("Rock " + i + " " );
       }
}

public class SimpleConstructor2 {

        public static void main(String[] args) {
               for(int i=1;i<3;i++)
                      new Rock2(i);

       }

}
//Rock 1 Rock 2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
package javat;
import static javat.Print.*;

class Cup{
       Cup( int marker){
               print("Cup("+ marker+ ")");
       }
    void f( int marker){
       print("f(" + marker + ")");
    }
}

class Cups{
        static Cup cup1 ;
        static Cup cup2 ;
        static{
               cup1 = new Cup(1);
               cup2 = new Cup(2);
       }
       Cups(){
               print("Cups()");
       }
}
public class ExplicitStatic {

        public static void main(String[] args) {
              Cups. cup2.f(99);
               print("Inside main()");
              Cups. cup1.f(99);
              Cups c=new Cups();
       }

}
/*
Cup(1)
Cup(2)
f(99)
Inside main()
f(99)
Cups()
*/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
package javat;
import static javat.Print.*;
class Mug{
       Mug( int marker){
               print("Mug("+ marker+ ")");
                     }
        void f(int marker){
               print("f("+marker+ ")");
       }
}

public class Mugs {
Mug mug1;
Mug mug2;
{
        mug1= new Mug(1);
        mug2= new Mug(2);
       print("mug1 & mug2 initialized" );
}
Mugs(){
print( "Mugs()");
}
Mugs(int i){
       print("Mugs(int)" );
}
public static void main(String[] args){
print ( "Inside main()");
new Mugs();
print( "new Mugs() completed");
new Mugs(1);
print( "new Mugs(1) completed");
}      
}/* output:
Inside main()
Mug(1)
Mug(2)
mug1 & mug2 initialized
Mugs()
new Mugs() completed
Mug(1)
Mug(2)
mug1 & mug2 initialized
Mugs(int)
new Mugs(1) completed
*/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
package javat;
import static javat.Print.*;

public class ArraysOfPrimitives {
public static void main(String[] args){
        int[] a1={1,2,3,4,5};
    int[] a2;
       a2=a1;
for (int i=0;i<a2.length;i++)
       a2[i]=a2[i]+1;
for (int i=0;i<a1.length;i++)
       print("a1[" +i+"]=" +a1[i]);
}
}
/*
a1[0]=2
a1[1]=3
a1[2]=4
a1[3]=5
a1[4]=6
*/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
package javat;
import java.util.*;
import static javat.Print.*;
public class ArrayNew {

        public static void main(String[] args) {
               // TODO 自动生成的方法存根
int[] a;
Random rand=new Random(47);
a=new int[rand.nextInt(20)];
print( "length of a="+ a.length );
print(Arrays. toString(a));
       }

}
/*
length of a=18
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
*/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
package javat;
import java.util.*;
import static javat.Print.*;

public class ArrayClassObj {

        public static void main(String[] args) {
Random rand= new Random();
Integer[] a= new Integer[rand.nextInt(20)];
print( "length of a="+a.length );
for(int i=0;i<a.length;i++)
       a[i]=rand.nextInt(500);
print(Arrays. toString(a));

       }

}
/*
length of a=16
[132, 424, 10, 411, 429, 305, 448, 476, 455, 340, 326, 120, 399, 157, 294, 394]
*/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
package javat;
import java.util.*;

public class ArrayInit {
  public static void main(String[] args){
         Integer[] a = {
                       new Integer(1),
                       new Integer(2),
                       3,
         };
         Integer[] b= new Integer[]{
                       new Integer(1),
                       new Integer(2),
                       3
         };
         System. out.println(Arrays.toString(a));
         System. out.println(Arrays.toString(b));
  }
}
/*
[1, 2, 3]
[1, 2, 3]
*/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
package javat;

public class DynamicArray {

        public static void main(String[] args) {
              Other. main(new String[]{ "wangzi","de de" ,"dfsa" });
              }
       }
class Other{
        public static void main(String[] args) {
               for(String s : args)
                     System. out.print(s+ " " );
       }
}
//可以在方法内部调用。
//wangzi de de dfsa
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

葫芦的运维日志

上一篇 搜索 下一篇
© 冰糖葫芦甜(bthlt.com) 2019 王梓 赞助联系方式 陕ICP备17005322号