当前位置:编程学习 > JAVA >>

java书中小例子

对象的上转型对象
假设B类是A类的子类或间接子类,当用子类B创建一个对象,并把这个对象的应用放到A类的对象中时
A  a;
a=new B();
A    a;
B  b=new  B();
a=b;
那么,称这个A类对象a是子类对象b的上转型对象
 
上转型对象特点;
1:上转型对象不能操作子类新增的成员变量(失去这部分属性),不能使用子类新增的方法(失去一些个功能)
2:上转型对象可以操作子类继承或隐藏的成员变量,也可一使用子类继承或重写的方法
3:上转型对象操作子类继承或重写的方法时,就是通知对应的子类对象去调用这些方法
4:可以将对象的上转型对象在强制转换到一个子对象,这时,该子类对象有具有子类的所有属性和功能;
 
[html] 
class 类人猿  
{  
 private int n=100;  
 void crySpeak(String s)  
  {  
  System.out.println(s);  
}  
}  
 class people extends 类人猿  
 {  
 void computer(int a,int b) //子类新增的方法,上转型对象不能引用  
{  
 int c=a*b;  
 System.out.println(c);  
}  
 void crySpeak(String s)  
{  
 System.out.println("**"+s+"**");//子类重写父类的方法  
}  
}  
class example6  
{  
 public static void main(String args[])  
{  
 类人猿 monkey=new people();  //monkey 是people对象的上转型对象  
monkey.crySpeak("I love this game!");  
 people people1=(people)monkey;  //把上转型对象转化为子类的对象  
people1.computer(10,10);  
}  
}  
 
补充:软件开发 , Java ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,