抽象方法实现多态___森林里的动物在快乐的生活

1.实现页面效果

2.创建基类或超类(父类)

1 namespace 森林里的小动物在快乐的生活
2 {
3    public abstract  class Animal//动物类
4     {
5        public abstract void Movement();//运动的方法
6     }
7 }

3.创建派生类(鱼子类)

namespace 森林里的小动物在快乐的生活
{
    public class Fish:Animal //派生类派生出基类
    {
        public override void Movement()//父类的方法
        {
            Console.WriteLine("鱼在水里游!");
        }
    }
}

4.创建派生类(狗子类)

 1 namespace 森林里的小动物在快乐的生活
 2 {
 3     public class Dog:Animal
 4     {
 5         public override void Movement()
 6         {
 7             Console.WriteLine("狗在地上跑!");
 8         }
 9     }
10 }

5.创建派生类(鸟子类省略)

6.Main方法

 1 namespace 森林里的小动物在快乐的生活
 2 {
 3     class Program
 4     {
 5         static void Main(string[] args)
 6         {
 7             Console.WriteLine("森林里的小动物在快乐的生活!");
 8             Console.WriteLine();
 9             Animal father = new Bird();
10             Animal father2 = new Dog();
11             Animal father3 = new Fish();
12             father3.Movement();
13             father2.Movement();
14             father.Movement();
15             Console.ReadLine();
16         }
17     }
18 }
时间: 2024-10-14 13:28:46

抽象方法实现多态___森林里的动物在快乐的生活的相关文章

.net学习笔记--使用抽象方法实现多态

在使用抽象方法实现多态之前,我们必须知道一些知识点: 1.抽象类不能被实例化: 2.抽象类可以包含非抽象成员,它们可以由其子类继承调用. 我们可以先创建一个Person的抽象类,代码如下: 1 abstract class Person 2 { 3 4 public Person() { } 5 6 public Person(string name,int age) 7 { 8 Name = name; 9 Age = age; 10 } 11 string name;12 13 public

【幻化万千戏红尘】千峰培训Day09-java基础学习:接口,抽象类,抽象方法,多态,instanceof

课程回顾: 访问修饰符 private--->default--->protected---->public 重写:子类中 1.访问修饰符不能比父类的更严格 2.静态/非静态.返回值类型.方法名.形式参数类型必须相同 递归:方法内部出现了自己调用自己 abstract:关键字 抽象的 1.修饰类:抽象类 2.修饰方法:抽象方法 final:关键字 最终的 1.类 不能被继承 2.变量 常量 3.方法 不能被重写 今日内容: java原则之最佳匹配性原则 在调用重载方法时,会优先选择最适合

抽象方法实现多态

抽象方法在抽象类中.抽象类中可以有非抽象成员,子类可以来使用. 抽象类中,申明的构造函数,也可以让子类通过base来调用. 抽象类只能是父类,但是没有规定抽象类必须要有子类 抽象方法既然是抽象的,子类必须实现.子类不想实现父类的方法,在子类中,就将方法设置为abstract,要重写父类方法,必须加override 子类不一定要去实现父类的抽象成员,但是必须必须重写方法,同时将方法的定义为abstract

java的方法重写 ,多态和关键字 instanceof和final

package cn.pen; /*final 是一个java的关键字,用于修饰局部变量.属性.方法.类,表示最终的意思. final修饰类表示最终类,无法被继承.public final class Penguin{} final修饰符方法,方法就不能被重写.所以final修饰的是最终子类或最终类 final 修饰属性,经常和static搭配使用,形成静态常量.静态常量不能被改变 修饰变量final 修饰基本数据类型 ,表示a中的内容(值)不能被改变final int a = 10; fina

.NET Core CSharp初级篇 1-6 类的多态与继承

.NET Core CSharp初级篇 1-6 本节内容为类的多态与继承 简介 终于讲到了面向对象三大特性中的两大特性--继承与多态.通过继承与多态,我们能很好的将类的拓展性发挥到了极致.在下面的内容讲解中,我们将从各个方面对继承和多态进行刨析. 继承 继承事实上是一个非常好理解的语法,在C#中实现继承使用A:B,表示A类继承B类.子类(一称为派生类)继承于父类(一称为基类)就好比孩子继承了父亲的一切,但是孩子总归是有自己的个性的,而父亲也有一些不会告诉孩子的事情.如果我们从之前的访问控制符这一

Java 多态的详解

1.什么是多态? 一个对象的多种状态 比如: 教师 a =老钟; 员工 b= 老钟; 2.多态体现 (1)Father类 非静态成员变量x 静态成员变量y 非静态方法eat,方法体输出父类信息 静态方法speak();方法体输出父类信息 (2):Son类 非静态成员变量x 静态成员变量y 非静态方法eat,方法体输出子类信息 静态方法speak();方法体输出子类信息 class Father { int x = 1; static int y = 2; void eat() { System.

【转 】C#中的接口实现多态

C#中的接口实现多态 我们都知道虚方法实现多态,抽象方法实现多态等,我们今天来看看如何使用接口实现多态 1.首先我们先要来了解了解什么是接口,它存在的意识 01.接口就是为了约束方法的格式(参数和返回值类型)而存在的 02.接口可以实现多继承,弥补单继承的缺陷.  03.接口可以看成是一个特殊的抽象类,通过反编译看源码可知 04.接口中方法不用访问修饰符,因为CLR会自动添加,并且不能有方法体 05.如果一个类实现了某个接口,就得实现该接口中所有的方法 06.接口要谨慎使用,防止出现接口污染!

小学生之面向对象的三大特征(封装、继承、多态)

在前一篇文章中,我们讲了面向对象的特征之一(封装),那么今天我们来了解面向对象的剩余两大特性. 一.继承 1.定义 继承就是从父类中获取一些公开的成员,如方法和属性.C#中只允许继承一个父类,但允许继承多个接口.如果子类继承接口,则必须实现接口中定义的所有公开成员. 公开成员是指在父类中定义为public的成员(public的作用域可在子类中生效,而private作用域则不可) 子类继承父类: 子类拥有父类非Private的属性和功能: 子类具有自己的属性和功能,即子类可以扩展父类没有的属性和功

C#中的接口实现多态

我们都知道虚方法实现多态,抽象方法实现多态等,我们今天来看看如何使用接口实现多态 1.首先我们先要来了解了解什么是接口,它存在的意识 01.接口就是为了约束方法的格式(参数和返回值类型)而存在的 02.接口可以实现多继承,弥补单继承的缺陷.  03.接口可以看成是一个特殊的抽象类,通过反编译看源码可知 04.接口中方法不用访问修饰符,因为CLR会自动添加,并且不能有方法体 05.如果一个类实现了某个接口,就得实现该接口中所有的方法 06.接口要谨慎使用,防止出现接口污染! 07.接口仅仅代表一种