如何永久保存用户输入?
How do I save user input permenantly?
所以我创建了一个帐户 class,我想永久保存用户详细信息以备将来使用。例如,如果用户创建一个帐户,我希望 him/her 能够在将来使用他的信息,包括余额。
请帮助我!
package mini_project;
import java.util.Random;
import javax.swing.JOptionPane;
public class Account {
private String firstName, surname;
private short transactionNumber;
String input;
private int startingAmount;
public Account(String first, String sur, int amount){
firstName = first;
surname = sur;
startingAmount = amount;
}
public void setFirstName (){
input = JOptionPane.showInputDialog("What Is Your First Name?").toUpperCase();
firstName = input;
}
public String getFirstName (){
return firstName;
}
public void setSurname (){
input = JOptionPane.showInputDialog("What Is Your Surname?").toUpperCase ();
surname = input;
}
public String getSurname (){
return surname;
}
public void setTransactionNumber (){
Random rand = new Random ();
int randomNumber = rand.nextInt(1000)+1;
transactionNumber = (short) randomNumber;
}
public short getTransactionNumber(){
return transactionNumber;
}
public void setShares(){
input = JOptionPane.showInputDialog("How Many Shares Do You Currently Own?");
startingAmount = Integer.parseInt(input);
}
public int getShares(){
return startingAmount;
}
}
如果要永久保存数据,需要用到数据库。
您可以使您的实例变量静态。除非您关闭程序,否则它将永久保存。
private static String firstName, surname;
private static short transactionNumber;
private static int startingAmount;
然后获取 setter 和 getter。但是去掉setter和getter函数中的static字。您只需要在实例变量中使用 static。
您总是可以使帐户 class 实现可序列化。这将允许您保存和导入对象的实例,在本例中为单个帐户对象。这些实例可以保存到文本文件中。如果您的程序需要更高的安全性,它们也可以被加密。
所以我创建了一个帐户 class,我想永久保存用户详细信息以备将来使用。例如,如果用户创建一个帐户,我希望 him/her 能够在将来使用他的信息,包括余额。 请帮助我!
package mini_project;
import java.util.Random;
import javax.swing.JOptionPane;
public class Account {
private String firstName, surname;
private short transactionNumber;
String input;
private int startingAmount;
public Account(String first, String sur, int amount){
firstName = first;
surname = sur;
startingAmount = amount;
}
public void setFirstName (){
input = JOptionPane.showInputDialog("What Is Your First Name?").toUpperCase();
firstName = input;
}
public String getFirstName (){
return firstName;
}
public void setSurname (){
input = JOptionPane.showInputDialog("What Is Your Surname?").toUpperCase ();
surname = input;
}
public String getSurname (){
return surname;
}
public void setTransactionNumber (){
Random rand = new Random ();
int randomNumber = rand.nextInt(1000)+1;
transactionNumber = (short) randomNumber;
}
public short getTransactionNumber(){
return transactionNumber;
}
public void setShares(){
input = JOptionPane.showInputDialog("How Many Shares Do You Currently Own?");
startingAmount = Integer.parseInt(input);
}
public int getShares(){
return startingAmount;
}
}
如果要永久保存数据,需要用到数据库。 您可以使您的实例变量静态。除非您关闭程序,否则它将永久保存。
private static String firstName, surname;
private static short transactionNumber;
private static int startingAmount;
然后获取 setter 和 getter。但是去掉setter和getter函数中的static字。您只需要在实例变量中使用 static。
您总是可以使帐户 class 实现可序列化。这将允许您保存和导入对象的实例,在本例中为单个帐户对象。这些实例可以保存到文本文件中。如果您的程序需要更高的安全性,它们也可以被加密。