import java.util.*;
abstract class mails// 抽象类
{
String beginaddress;
String endaddress;
public void ShowMe() {
}// 显示邮件自身信息
}
class Parcel extends mails // 包裹类继承
{
int i = 0;
String storage[] = new String[20];
String str = beginaddress + endaddress;
public void ShowMe() {
storage[this.i] = str;
this.i++;
}
}
class Remittance extends mails// 汇款类继承
{
String inputname;
String outputname;
float fee;
public void ShowMe() {
int i = 0;
int j = 0;
String str = inputname + outputname;
Object arr[][] = new Object[5][5];
arr[i][0] = str;
arr[0][j] = fee;
i++;
j++;
for (int k = 0; k < i; k++) {
System.out.println("汇款双方" + arr[i][0] + "钱数" + arr[0][j]);
}
}
}
class ShowMails {
mails showList[];
int num2;
Parcel a2 = new Parcel();
public static final int mas = 10;
private static final String NULL = null;
int present = 0;
public int putMails()// 存储邮件
{
present = a2.i;
if (present <= mas) {
a2.ShowMe();
for (int j = 0; j <= a2.i; j++) {
System.out.println("包裹所有信息是:" + a2.storage[a2.i]);
}
} else {
System.out.println("抱歉,邮件储量已满,请进行收取邮件操作后在进行该操作");
}
return present;
}
public int getMails()// 获取邮件
{
a2.ShowMe();
a2.i = num2;
a2.storage[a2.i] = NULL;
int count = 0;
count++;
return count;
}
public void showAll(int num1)// 展示邮件
{
a2.ShowMe();// !!!
a2.i = num1;// !!!
System.out.println("第" + a2.i + "邮件的信息是 " + a2.storage[a2.i]);
System.out.println("邮件最大储量为10");
System.out.println("目前存入的邮件个数是" + present);
System.out.println("目前收取的邮件个数为" + getMails());
System.out.println("所剩可存储的邮件数为" + (mas - present + getMails()));
}
}
interface MailPost {
public void callPrice();
public void post();
}
class PostParcel extends Parcel implements MailPost// 可邮寄的的包裹
{
public void post() {
}
public void callPrice() {
}
}
class Postemit extends Remittance implements MailPost// 可邮寄的汇款
{
public void callPrice()// 计算邮费并以附带看书返回
{
float m = 15.00f;
ShowMails d1 = new ShowMails();
float n = d1.putMails() * m;
System.out.println("邮费是" + n);
}
public void post() {
}
}
public class Show {
public static void main(String args[])
{boolean flag=true;
boolean flag1=true;
while(flag1)
{System.out.println("请输入数字选择包裹或者汇款");
System.out.println("1.包裹 ");
System.out.println("2.汇款 ");
@SuppressWarnings("resource")
Scanner in=new Scanner(System.in);
int m=(int) in.nextDouble();
switch(m)
{
case 1:
{
while(flag)
{
System.out.println("1.添加包裹");
System.out.println("2.查看所有包裹信息");
System.out.println("3.获取包裹信息");
System.out.println("4.收取邮件");
System.out.println("5.查询邮费");
System.out.println("6.退出");
@SuppressWarnings("resource")
Scanner in1=new Scanner(System.in);
int n=(int) in1.nextDouble();
switch(n)
{
case 1:
{
System.out.println("请输入邮件起始地址 ");
@SuppressWarnings("resource")
String bgn = new Scanner(System.in).nextLine();
System.out.println("请输入邮件目的地址 ");
@SuppressWarnings("resource")
String end = new Scanner(System.in).nextLine();
Parcel a1=new Parcel();
a1. beginaddress=bgn;
a1.endaddress=end;
System.out.println("存储成功!");
break;
}
case 2:
{
ShowMails b1=new ShowMails();
b1.putMails();
break;
}
case 3:
{
System.out.println("请输入邮件编号");
@SuppressWarnings({ "unused", "resource" })
Scanner in2=new Scanner(System.in);
int num1=(int) in1.nextDouble();
ShowMails b2=new ShowMails();
b2.showAll(num1);
break;
}
case 4:
{
System.out.println("请输入要收取的邮件号");
@SuppressWarnings({ "unused", "resource" })
Scanner in2=new Scanner(System.in);
int num0=(int) in1.nextDouble();
ShowMails c1=new ShowMails();
c1.num2=num0;
break;
}
case 5:
{
Postemit d2=new Postemit();
d2.callPrice();
break;
}
case 6:
{
flag=false;
break;
}
}
}break;
}
case 2:
{
System.out.println("请输入汇款人姓名 ");
@SuppressWarnings("resource")
String name1 = new Scanner(System.in).nextLine();
System.out.println("请输入需要汇款人的姓名 ");
@SuppressWarnings("resource")
String name2 = new Scanner(System.in).nextLine();
System.out.println("请输入钱数/RMB ");
@SuppressWarnings("resource")
Scanner in1=new Scanner(System.in);
float money=(float) in1.nextDouble();
Remittance c1=new Remittance();
c1.inputname=name1;
c1.outputname=name2;
c1.fee=money;
System.out.println("汇款成功!");
System.out.println("汇款信息如下:");
Remittance d1=new Remittance();
d1.ShowMe();
break;
}
}
}
}
}