好久没有更新了,偷懒,该打!
1、这个是一个基本的文件操作,实现对文件读取、写入一个数字的操作的
package trying;
import java.io.*;
/**
* @author gooing
*/
public class filerw {
private file f = new file("d://j2//a.txt");
public int getnum(){
int i = -1;
try{
string stri="";
bufferedreader in = new bufferedreader(new filereader(f));
while((stri=in.readline())!=null){
i = integer.parseint(stri.trim());
}
in.close();
}catch(exception e){
e.printstacktrace();
}
return i;
}
public void setnum(){
int i = getnum();
i++;
try{
printwriter out=new printwriter(new bufferedwriter(new filewriter(f,false)));
out.write(string.valueof(i));
//可能是编码的原因,如果直接写入int的话,将出现java编码和windows编码的混乱,因此此处写入的是string
out.close() ;
}catch(exception e){
e.printstacktrace();
}
}
public static void main(string[] args) {
filerw frw = new filerw();
for(int i =0;i<100; i++){
frw.setnum();
system.out.println(frw.getnum());
}
}
}
2、下面这个是学习工厂模式的一个例子
//garden.java实现一个抽象花园工厂,你可以从中得到该花园的中心植物和周边植物;
//当然,对于不同的花园而言,其中心植物和周边植物是不一样的
package pkgfactory;
/**
* @author gooing todo to change the template for this generated type
* comment go to window - preferences - java - code style - code
* templates
*/
public abstract class garden {
public abstract plant getcenter();
public abstract plant getborder();
public void memo() {
system.out.println("centerplant:" + getcenter().getname());
system.out.println("borderplant:" + getborder().getname());
system.out.println("---------------------");
}
}
//plant.java 实现对花园中植物的基本抽象,此处只提供一个植物的name属性
package pkgfactory;
public class plant {
public plant(string name) {
this.name = name;
}
public string getname() {
return name;
}
private string name;
}
//vergarden.java 和flowergarden.java 分别实现了一个菜园子和花园子
package pkgfactory;
public class veggarden extends garden {
public plant getcenter() {
return new plant("wheat");
}
public plant getborder() {
return new plant("carrot");
}
}
package pkgfactory;
public class flowergarden extends garden {
public plant getcenter() {
return new plant("rose");
}
public plant getborder() {
return new plant("juhua");
}
}
//gardener.java是该例程的一个驱动
package pkgfactory;
public class gardener {
public static void main(string[] args) {
garden g1 = new flowergarden();
garden g2 = new veggarden();
g1.memo();
g2.memo();
}
}
闽公网安备 35060202000074号