java 多态总结



/*
 多态  
01 父类的引用指向自己子类的多态
02 多态的存在提高了程序的扩展性
03 多态的前提   必须是类与类之间有关系 要么继承要么实现  还有就是存在覆盖
04  子类向上转型      和父类向下转型   instanceof
*/




/*








abstract  class  Animal
{
abstract void eat();
}
class Car extends Animal
{
public void eat()
{
 System.out.println("吃鱼");
}
public void catmouse()
{
System.out.println(" catch  mounse");
}
}
class Pig  extends Animal
{
   public void eat()
   {
    System.out.println("史料");
   }
   public void  sleep()
{
      System.out.println(" 猪头");
   }
}
class  Duotai 
{
public static void main(String[] args) 
{
         //Car  c=new Car();
//funtion(c);
//Pig p=new Pig();
//funtion(p);
父类指向子类
         //Animal  a=new Car();
    //a.eat();
//funtion(new Car());
//funtion(new Pig());
这个是向上转型
         //Animal a=new Car();
 //a.eat();
 这个是向下转型
//Car  c=(Car)a;
//c.catmouse();
         
//利用多态转型 
  funtion(new Pig());
  funtion(new Car());
}
   
   public static void funtion(Animal a)
   {
        a.eat();
// 多态转型
if(a instanceof Pig)
  {
   Pig p=(Pig)a;
p.sleep();
  }
  else if(a instanceof Car)
  {
   Car c=(Car)a;
c.catmouse();
  }
   } 


//public static void funtion(Car c)
//{
           //c.eat();
//}
    //public static void funtion(Pig  g)
//{
           //g.eat();
//}
}




*/






/*
工具类 
*/
class DoStudent
{
public void dosome(Student stu)
{
stu.study();
stu.sleep();
}
}
abstract  class  Student
{
   public abstract  void study();
   public void sleep()
   {
     System.out.println("躺在睡");
   }
}
class BaseStudent  extends Student
{
public void study()
{
  System.out.println("基础学习");
}
public void sleep()
{
      System.out.println("坐着睡");
}
}
class  AdvStudnet  extends Student
{
public void study()
{
  System.out.println("abv 学习");
}
}
class  Gongjulei
{
public static void main(String[] args) 
{
 DoStudent  d=new DoStudent();
}
}







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值