请选择 进入手机版 | 继续访问电脑版

ylsunyuan技术论坛中心

 找回密码
 注册(请使用中文注册)
搜索
热搜: 活动 交友 discuz
查看: 759|回复: 0

类的强制转换(向下转型 和 向上转型)

[复制链接]

124

主题

127

帖子

619

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
619
发表于 2015-11-24 21:56:25 | 显示全部楼层 |阅读模式

  1. public class ZiFuChange {
  2.         
  3.         public static void main(String[] args){
  4.                
  5.                 //向上转型
  6.                 Fu ff = new Zi();
  7.                 ff.Speak();
  8.                 //这个方法不能输出 子类中的 show方法   所以  以下的语句会报错
  9.                 //ff.show();
  10.                
  11.                
  12.                 System.out.println("-----------------------");
  13.                
  14.                
  15.                 //向下转型
  16.                 //类的  强制转换   调用子类的中方法  不用再创建一个新的子类对象  这样更节约内存空间
  17.                 Zi hh  = (Zi)ff;
  18.                 hh.Speak();
  19.                 //这时输出的是
  20.                 hh.show();
  21.                
  22.         }

  23. }


  24. class Fu{
  25.         public void Speak(){
  26.                 System.out.println("i am Fu");
  27.         }
  28.         
  29. }

  30. class Zi extends Fu{
  31.         public void Speak(){
  32.                 System.out.println("i am zi");
  33.         }
  34.         
  35.         public void show(){
  36.                 System.out.println("this is Zi function");
  37.         }
  38. }
复制代码


回复

使用道具 举报

本版积分规则

QQ|Archiver|手机版|小黑屋|ylsunyuan技术论坛 ( 桂ICP备14005218号-1

GMT+8, 2024-3-29 22:14 , Processed in 0.059559 second(s), 33 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表