• 面向对象编程


    ////////////////////////////////////
    ////////////////////////////////////
    ////////////////////
    面向对象编程

    面向对象的概念
    定义
    指一种程序设计的范型
    大幅度提高软件项目的成功率
    降低维护费
    提高可移植性和可靠性

    面向对象的三个主要特征
    封装性
    多态性
    继承性

    面向对象和面向过程的差别
    面向过程
    强调的是功能行为
    关注的是解决这个问题须要哪些步骤
    面向对象
    将功能封装进对象,强调了具备功能的对象
    关注的是解决这个问题须要那些对象
    面向对象是基于面向过程的


    类和对象
    OC中描写叙述事物通过类的形式实现,类是多个同种类型事物的抽象
    比如1:施工图纸,能够看作是房子的类
    
    张三的房子(对象1)李四的房子(对象2)
    比如2:汽车图纸,能够看作是类
    依照图纸生产的汽车(对象)
    比如:学籍系统:学生类和学生张三、李四之间的关系
    全部的学生都有姓名、年龄、班级等信息
    我们也能够改动学生的姓名、年龄、班级信息
    所以能够把学生的姓名、年龄、班级抽象——学生类的属性
    把对学生姓名、年龄、班级的改动和实现——抽象成学生类的方法
    把学生张三、李四——学生类对象
    类经过实例化之后——对象
    (1)类和对象之间的关系 
    类有三部分组成
    类的名称:类名
    类的属性:一组包括数据的属性
    类的方法:同意对属性中包括的数据进行操作的方法
    对象:(Object)
    是系统中基本执行的实体
    对象是类类型的变量
    定义了一个类,就能够创建这个类的多个对象
    一个类就是具有同样类型的对象的抽象
    比如:
    人的类设计:仅仅关心3样东西
    事物名称(类名):人(person)
    属性:身高(height)年龄(age)
    行为(功能):跑(run)、打架(fight)
    
    
    比如:芒果、苹果和桔子都是Fruit类的对象
    (2)怎样把日常生活中的事物抽象成程序中的类
    拥有同样(或者类似)属性和行为的对象都能够抽象出一个类
    方法:一般名词都是类(名词提炼法)
    坦克发射3颗炮弹轰掉了2架飞机
    坦克类 炮弹类 飞机类
    
    
    小明在公交车上牵着一条叼着热狗的狗
    人的类 公交类 热狗类 狗
    试着将以下的画面中的事物抽象成类
    

    玛丽
    子弹
    墙体
    怪兽
    图片
    箱子(棕色、黄色)没写出来原因:把墙和箱子看做一个类
    
    

    愤慨的小鸟

    	
    
    石头
    木板
    小鸟
    图片

    植物大战僵尸

    植物
    僵尸
    太阳
    子弹
    小车
    图片	
    
    
    团购:
    商品
    			

    思考&实现1:

    1)试着将以下的实体抽象成类(注意类包含:类名、属性、方法)
    老师:
    类名:Teacher
    属性:姓名、年龄、教龄、所教的课程、工资
    行为:上课、批改作业、考试
    僵尸:
    类名:Walking_dead
    属性:攻击力 血量
    行为:跳、吸血
    电脑
    类名:computer
    属性:生产商、型号、cpu、内存、显卡...
    行为:上网、看电影、看视频
    学生
    类名:Student
    属性:学号、姓名、成绩、职务
    行为:翘课 、谈恋爱、打游戏
    书本:
    类名:Book
    属性:出版社、重量、页码、作者
    行为:阅读
  • 相关阅读:
    JavaSE-28 hashCode()方法、equals()方法和==相关概念
    设计模式:命令模式(Command Pattern)
    Spring-02 Java配置实现IOC
    Spring-01 注解实现IOC
    [功能帮助类] 最新的Functions 类 (转载)
    C# DbHelperSQL,操作不同的数据库帮助类 (转载)
    C# DbHelperSQLP,操作不同的数据库帮助类 (转载)
    C# DbHelperSQLite,SQLite数据库帮助类 (转载)
    C#DbHelperOra,Oracle数据库帮助类 (转载)
    C#DbHelperOleDb,Access数据库帮助类 (转载)
  • 原文地址:https://www.cnblogs.com/mthoutai/p/6758151.html
Copyright © 2020-2023  润新知