java复习&学习 2015/07/14

来源:互联网 发布:ipad淘宝卖家版 编辑:程序博客网 时间:2024/06/15 07:05

1、构造方法-----constructor

2、static 测试------------以类的名称来调用静态方法

public class OODemo {
public static void main(String args[]){
PrivateTest.Do();
}
}

class PrivateTest{
private PrivateTest(){}

public static void Do(){
System.out.print("Static test");
}
}

结果


3、对构造函数加private来限制非抽象类被初始化



public class OODemo {
public static void main(String args[]){
PrivateTest.Do();
PrivateTest lala=new PrivateTest();
}
}

class PrivateTest{
private PrivateTest(){}

public static void Do(){
System.out.print("Static test");
}
}

结果


4、静态变量----所有实例一样

public class Cat{

private static int CatCount=0;----------CatCount这个静态变量只会在类第一次载入时被初始化

public Cat(){Catcount++;}

}

5、private对构造函数,在类内部声明类-----------虽然构造函数前加private无法生成类,但在类内部还是可以生成的



public class OODemo {
public static void main(String args[]){
PrivateTest.WhatIsName();
}
}




class PrivateTest{
private String Name="MiaoMiao";
private PrivateTest(){}
public static void Do(){
System.out.print("Static test");
}
public static void WhatIsName(){
PrivateTest Cat1=new PrivateTest();
System.out.print(Cat1.Name); 
}
}

结果


6、静态初始化程序--------6.1静态的final变量所在的类不见的时候是否还会存在?2、静态初始化程序3、静态的final变量是常数,常数变量的名称应该全部是大写的!!

代码1                      //final常数变量无法找到-----------------解决用Foo.FORTYTWO见代码2

package finalTest;
public class OODemo {
public static void main(String args[]){
System.out.println(""+FORTYTWO);}
}
class  Foo{
final static int FORTYTWO;
static{//静态初始化程序
FORTYTWO=42; }
}


代码2                       //证明final static int FORTYTWO编译完就产生了不用生成对象也可以!

package finalTest;


public class OODemo {
public static void main(String args[]){
// Foo Foo1=new Foo();
System.out.println(""+Foo.FORTYTWO);
}
}
class  Foo{
final static int FORTYTWO;
static{//静态初始化程序
FORTYTWO=42;
}
}

结果:


0 0
原创粉丝点击