美文网首页
面向对象的三大特征

面向对象的三大特征

作者: 胖虎很可爱 | 来源:发表于2018-04-20 16:17 被阅读0次

面向对象的三大特征

  • 封装
  • 继承
  • 多态

封装:是面向对象方法的重要原则,就是把对象的属性和行为(数据)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节,就是把不想告诉或者不该告诉别人的东西隐藏起来,把可以告诉别人的公开,别人只能用我提供的功能实现需求,而不知道是如何实现的。增加安全性

继承:是面向对象最显著的一个特性,继承是从已有的类中派生出新的类称为子类,子类继承父类的数据属性和行为,并能根据自己的需求扩展出新的行为,提高了代码的复用性。

多态:有这么一句话,父类引用指向子类对象,通过一个例子说明:

需要实现吃各种水果,有香蕉,苹果,梨子等等。
我们是不是就得写:
public  void eat(Banana banana) { //.....}
public  void eat(Apple apple) { //.....}
等等等等。这样是不是很麻烦啊,但是我要是把这个方法写成:
public void eat(Fruit fruit){//....} 
这样只要把其他苹果香蕉等继承Fruit或者实现Fruit接口,就都可以作为eat的参数,eat方法中的参数就是父类引用指向子类对象。

python中多态的体现:

class Person(object):

    def __init__(self, name, gender):
        self.name = name
        self.gender = gender

    def whoAmI(self):
        return 'I am a {}, my name is {}'.format(self.__class__.__name__, self.name)

class Student(Person):

    def __init__(self, name, gender, score):
        super(Student, self).__init__(name, gender)
        self.score = score

class Teacher(Person):

    def __init__(self, name, gender, course):
        super(Teacher, self).__init__(name, gender)
        self.course = course

p = Person('Tim', 'Male')
s = Student('Bob', 'Male', 88)
t = Teacher('Alice', 'Female', 'English')
print(p.whoAmI())
print(s.whoAmI())
print(t.whoAmI())

相关文章

  • 面向对象

    面向对象方法概论 对象、结构 概念呢 特征 1.1 什么是面向对象 面向对象方法的基本思想 对象 属性-静态特征 ...

  • Java基础(二)

    面向对象特征;重载和重写;静态绑定和动态绑定;抽象类和接口;包。 面向对象的特征 面向对象的三个基本特征是:封装、...

  • iOS概念知识

    面向对象的三大特征,并作简单的介绍。 面向对象的三个基本特征是:封装、继承、多态。 1.封装是面向对象的特征之一,...

  • 面试 | java基础

    面向对象 1、面向对象特征? 封装封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成...

  • Java学习day-07:面向对象

    一、面向过程和面向对象 1.面向对象与面向过程的区别: 面向对象具有三大特征;封装,继承,多态;面向对象与面向过程...

  • java 学习第四天

    面向对象的特征二:继承 关键字super this和super的区别 面向对象特征三: 多态 instanceof...

  • Java 工程师成神之路 | 2019正式版

    摘要:什么是面向对象 基础篇 01面向对象 → 什么是面向对象 面向对象、面向过程 面向对象的三大基本特征和五大基...

  • 面向对象特征

    ⾯向对象的三⼤特征 封装 , 继承 ,多态 什么是封装 封装隐藏了内部实现细节,只暴露出接⼝ 电灯对象你只...

  • 面向对象特征

    面向对象编程有4个基本特征: 抽象: 抽象就是将一些事物的共性和相似点抽离出来,并将这些属性归为一个类,这个类只考...

  • Java的封装、继承、多态 包

    目录: 面向对象的三大特征:封装、继承、多态包方法重写superinstanceof 面向对象的三大特征:封装、继...

网友评论

      本文标题:面向对象的三大特征

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