public class TestSuper
{
public static void main(String args[])
{
D200_Card my200=new D200_Card();
my200.balance=50.0;
System.out.println("父类被隐藏的金额为"+my200.getBalance());
if(my200.performDial())
System.out.println("子类的剩余金额为"+my200.balance);
}
}
abstract class PhoneCard
{
double balance;
abstract boolean performDial();
double getBalance()
{
return balance;
}
}
abstract class Number_PhoneCard extends PhoneCard
{
long cardNumber;
int password;
String connectNumber;
boolean connected;
boolean performConnection(long cn,int pw)
{
if(cn==cardNumber && pw==password)
{
connected=true;
return true;
}
else
return false;
}
}
class D200_Card extends Number_PhoneCard
{
double additoryFee;
double balance;
boolean performDial()
{
if(balance>(0.5+additoryFee))
{
balance-=(0.5+additoryFee);//a-=b:a=a-b
return true;
}
else
return false;
}
double getBalance()
{
return super.balance;//super.balance返回当前对象的直接父类Number_PhoneCard的balance值
}
}
//super用于在一个类中引用它的父类(父类的属性,方法),super代表的是直接父类
{
public static void main(String args[])
{
D200_Card my200=new D200_Card();
my200.balance=50.0;
System.out.println("父类被隐藏的金额为"+my200.getBalance());
if(my200.performDial())
System.out.println("子类的剩余金额为"+my200.balance);
}
}
abstract class PhoneCard
{
double balance;
abstract boolean performDial();
double getBalance()
{
return balance;
}
}
abstract class Number_PhoneCard extends PhoneCard
{
long cardNumber;
int password;
String connectNumber;
boolean connected;
boolean performConnection(long cn,int pw)
{
if(cn==cardNumber && pw==password)
{
connected=true;
return true;
}
else
return false;
}
}
class D200_Card extends Number_PhoneCard
{
double additoryFee;
double balance;
boolean performDial()
{
if(balance>(0.5+additoryFee))
{
balance-=(0.5+additoryFee);//a-=b:a=a-b
return true;
}
else
return false;
}
double getBalance()
{
return super.balance;//super.balance返回当前对象的直接父类Number_PhoneCard的balance值
}
}
//super用于在一个类中引用它的父类(父类的属性,方法),super代表的是直接父类