我想把一个类中的static变量还原到初始状态,有什么方法吗?能不能重新装载类来做到?我试了好像没用阿for example:public class Test{
public static void main(String[] args){
A.i = 100;
System.out.println(A.i);//显示 100
//do something
//我想使A.i还原为初始状态10 System.out.println(A.i);//显示 10
}
}
class A{
static i = 10;
}
public static void main(String[] args){
A.i = 100;
System.out.println(A.i);//显示 100
//do something
//我想使A.i还原为初始状态10 System.out.println(A.i);//显示 10
}
}
class A{
static i = 10;
}
private static int a = 10;
private static final int save = a; public int getA(){
return a;
} public int setA(int a){
this.a = a;
} public void revert(){
a = save;
}
}
以后每次都load就可以了。
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">
<hibernate-mapping > <class name="package.Record" table="RECORDS" dynamic-insert="true" dynamic-update="true">
<id name="id" column="ID" type="int">
<generator class="native"/>
</id> <discriminator column="RECORD_TYPE" type="String"/>
<subclass name="package.ImportRecord" discriminator-value="im"/>
<subclass name="package.ExportRecord" discriminator-value="ex"/>
<subclass name="package.BackToProducerRecord" discriminator-value="btp"/>
<subclass name="package.BackFromCustomerRecord" discriminator-value="bfc"/> <property name="price" column="PRICE" type="double" not-null="true"/>
<property name="amount" column="AMOUNT" type="int" not-null="true"/> <many-to-one name="product" column="PRODUCT_ID" class="package.Product" not-null="true"/>
<many-to-one name="order" column="ORDER_ID" class="package.Order" not-null="true"/>
</class>
</hibernate-mapping>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">
<hibernate-mapping > <class name="package.Payment" table="PAYMENTS" dynamic-insert="true" dynamic-update="true">
<id name="id" column="ID" type="int">
<generator class="native"/>
</id> <discriminator column="PAYMENT_TYPE" type="String"/>
<subclass name="package.Pay" discriminator-value="p"/>
<subclass name="package.Receive" discriminator-value="r"/> <property name="date" column="DATE" type="date" not-null="true"/>
<property name="money" column="MONEY" type="double" not-null="true"/>
<property name="re" column="REMARK" type="String" not-null="false"/> <many-to-one name="entity" column="ENTITY_ID" class="package.Entity" not-null="true"/>
</class>
</hibernate-mapping>
public List<Order> getOrderList(int type);
public List<Order> getOrderListByEntity(int type, Long entityId);
public List<Record> getRecordList(int type);
public List<Record> getRecordListByProduct(int type, Long productId);
public List<Record> getRecordListByOrder(int type, Long orderId);
public List<Entity> getEntityList(int type);
public void addProduct(Product product);
public void updateProduct(Product product);
public void deleteProduct(Long productId);
public Product getProduct(Long productId);
public void addRecord(Record record);
public void deleteRecord(Long recordId);
public void addOrder(Order order);
public void deleteOrder(Long orderId);
public void updateOrder(Order order);
public void addEntity(Entity entity);
public void deleteEntity(Long entityId);