zoukankan      html  css  js  c++  java
  • 10.02

    多态变化,static关键字

    package com.beyondTest;

    public class DuoTaiTest {
    public static void main(String[] args) {
    SiYangYuan syy=new Cat();
    syy.Feed();


    }

    }
    class SiYangYuan{
    public void Feed(){

    }

    }
    class Cat extends SiYangYuan{ //多态一定要实现继承,因为多态的发生条件是必须重写父类方法
    public void Feed(){
    System.out.println("给猫喂食");
    }
    }
    class Dog extends SiYangYuan{
    public void Feed(){
    System.out.println("给狗喂食");
    }
    public void eatShit(){
    System.out.println("eat shit!!!");
    }
    }

    以上是多态的代码体现;

    package com.beyondTest1;


    public class SiYangYuan {

    public void Feed(Animal a){
    Cat cat=(Cat) new Animal();
    a.eatFood();

    }
    public static void main(String[] args) {
    T tt=new T();
    Animal xx=new Dog();
    // tt.test(xx);
    // 
    Dog dog=new Dog();
    dog.eatShit();

    Dog dog1=(Dog)xx ;
    dog1.eatShit();

    }

    class Animal{
    public void eatFood(){}
    public void slepp(){}
    }
    /* 在T类中编写test方法 将Animal绑定在(传入)方法,然后将Animal类转换成Cat类
    * 这样的话在主方法中调用test方法,会将任何传入的值

    * */
    class T{
    public void test(Animal a){ //静态绑定的例子 编译期就将Animal类绑定在方法test中,
    Cat yyCat=(Cat)a;
    yyCat.Feed();
    }
    }

    class Cat extends Animal{ //多态一定要实现继承,因为多态的发生条件是必须重写父类方法
    public void Feed(){
    System.out.println("给猫喂食");
    }
    }

    class Dog extends Animal{
    public void Feed(){
    System.out.println("给狗喂食");
    }
    public void eatShit(){
    System.out.println("eat shit!!!");
    }
    }

    以上是静态的代码体现;

  • 相关阅读:
    oracle转义用单引号
    【转】plsql 永久注册码适用个版本
    winform datagridview某一列设为自动宽度
    Allow windows service to "Interact with desktop"
    Format a Hard Drive in Csharp C#格式化总结
    Lib New
    大嫂的HTML
    ASP.NET 分页控件
    linux搭建常用命令(运行jar,查看进程)
    如何用navicat连接linux服务器上的mysql以及重启服务
  • 原文地址:https://www.cnblogs.com/wanghaoning/p/14143746.html
Copyright © 2011-2022 走看看