美文网首页C#
面向对象(五)-面向对象三大特性之继承

面向对象(五)-面向对象三大特性之继承

作者: 元宇宙协会 | 来源:发表于2017-11-19 12:33 被阅读41次
面向对象的三大特性
  • 封装
  • 继承
  • 多态

1.封装

之前学习的构造函数与set、get访问器函数都是在进行封装。我们在类中声明的函数方法也都是在进行一些功能的整合。这些就是封装。


2. 继承

继承(加上封装和多态性)是面向对象的编程的三个主要特性(也称为“支柱”)之一。 继承用于创建可重用、扩展和修改在其他类中定义的行为的新类。
其成员被继承的类称为“基类”,继承这些成员的类称为“派生类”。 派生类只能有一个直接基类。 但是,继承是可传递的。 如果 ClassB 派生出 ClassC,ClassA 派生出 ClassB,则 ClassC 会继承 ClassB 和 ClassA 中声明的成员。

思考

题目一:

老师、学生的类。
老师有名字、性别、年龄、所带班级、教的科目, 老师可以教学生学习,老师可以用电脑, 老师可以吃饭。
学生有名字、性别、年龄、所在班级,学生可以学习,还可以用电脑,还可以吃饭。

思路:

在看这道题的时候,首先先看共同的属性,可不可以抽出一个基类,然后再去继承这个基类。
1. 显而易见,我们可以定义一个Person类,具有名字、性别、年龄这些字段,还有吃饭、用电脑这两个方法。
2. 老师的类继承自Person类,只需要添加教的科目、所带的班级的字段,和教学生的方法。
3. 学生继承自Person类,只需要添加一个所在班级的字段,和学习的方法。

代码上手 :

  • 基类
namespace 继承
{
    enum gender
    {
        boy,
        girl
    }
    class Person  
    {
        public string name;
        public int age;
        public gender gender;

        public void eat()
        {
            Console.WriteLine("我在吃东西");
        }

        public void playComputer()
        {
            Console.WriteLine("我在用电脑");
        }
    }
}

  • 老师类
namespace 继承
{
    class Teacher : Person
    {
        public string className;
        public string subjectName;

        public void teach()
        {
            Console.WriteLine("教学生学习");
        }
    }
}

  • 学生类
namespace 继承
{
    class Student : Person
    {
        public string inClassName;

        public void learn()
        {
            Console.WriteLine("学生正在学习");
        }
    }
}

3.多态

派生类中详细解释,看下一篇博客即可知晓

相关文章

  • Java从入门到入坑(基础篇)

    01:面向对象 1:什么是面向对象 面向对象,面向过程 面向对象的三大基本特征和五大基本原则 三大特性:封装,继承...

  • 面向对象:创建对象&继承

    博客内容:什么是面向对象为什么要面向对象面向对象编程的特性和原则理解对象属性创建对象继承 什么是面向对象 面向对象...

  • 【Java】面向对象:继承、组合和多态

    一. 面向对象三大特性之继承 1. 继承的概念 继承(inheritance)机制:是面向对象程序设计使代码可以复...

  • 面向对象语言基础

    面向对象语言的特性 面向对象的语言的特性:封装、继承、多态。 面向对象语言的设计原则 面向对象的语言在进行程序设计...

  • 面向对象

    面向对象有3大特性:封装、继承、多态1、介绍面向对象编程 面向对象编程(Object Oriented Progr...

  • python 高级 面向对象编程(OOP)

    面向对象有3大特性:封装、继承、多态 1、介绍面向对象编程 面向对象编程(Object Oriented Pro...

  • JavaScript之面向对象编程

    五、面向对象编程 目录:面向对象原型继承、面向对象class继承(ES6引入的) 1.面向对象原型继承 类:模板 ...

  • 设计模式之美-BJ002面向对象、设计原则、设计模式、编程规范、

    1.面向对象 面向对象的四大特性:封装、抽象、继承、多态面向对象编程与面向过程编程的区别和联系面向对象分析、面向对...

  • 面向对象三大特性(一):封装

    面向对象有三大特性:封装、继承和多态。注意,是面向对象的三大特性而不是Java的三大特性,Java只是面向对象语言...

  • Objective-C初始化方法

    一、继承 面向对象的三大特性:封装,继承,多态。⾯向对象提供了继承特性。继承既能保证类的完整,又能简化代码。面向对...

网友评论

    本文标题:面向对象(五)-面向对象三大特性之继承

    本文链接:https://www.haomeiwen.com/subject/lfbuvxtx.html