介绍

对象:是指看得见摸得着的具体特指的对象

类:是抽象概念,是一个模板。是对某种类型的对象定义变量和方法。是具有相同属性和方法的一组对象的集合。

比如:电脑、一台Dell笔记本电脑是类,因为电脑虽然看得见摸得着,但不是特指,Dell笔记本电脑很多,不知道你指的是哪台;而若说我面前的这台Dell电脑,就是对象了,这台电脑就是我的,所指很明确。

对象是类的实例化

面向对象:与面向过程区别来看,面向过程是从功能出发,自顶向下设计,将问题分解成小模块,最后整合成一个整体,各部分都是为了功能服务。我理解的面向对象是:对象是主体,主要任务是设计类,举个例子说,可以看见五金店里有卖螺丝,可以看做一个螺丝类,而不同的人买螺丝可能装到的地方不一样,有人用来拧到门上,有的用来拧到桌子上,有的用来拧到电脑上等等(忽略型号),再比如,自行车轮胎坏掉了,修车师傅就会给你换一个轮胎,同样自行车其他部件也一样,看做类,数据和方法封装为一个整体,用的时候实例化就行了。

先有对象还是先有类?

  先有对象
世界上第一台通用数字电子计算机于1946年2月14日在美国制成,取名埃尼阿克。做个时间轴来看,1946年2月14日 埃尼阿克诞生,它其实就是一个对象,当时人们发明它只是用来计算,后来随着技术发展,出现了一批可以进行数值计算逻辑计算,并具有存储记忆功能的电子计算器统称为“计算机“,这个抽象出来的,一组有共同属性的对象的集合是类。所以先有对象后又类。

构造函数

介绍

类的属性:
如上图,将写入的代码注释后,可以将属性变为只读型,从而保护数据(若将get{}语句注释后变为只写型),,,但是出现如下错误:
做了这么多的铺垫,终于写到构造函数了,构造函数就可以解决只读属性不能赋值的问题了。
这里写了一个含有三个参数的返回值,只需实例化一个student(stu1)就能赋值了。

重载

第一条是有三个参数,第二条有两个参数,他们构造函数的名字一样,参数不同,称为重载
若不写构造函数,则默认一个无参数的函数,写有参构造函数时,默认的被替代。要想重载,就要写多个参数不同的构造函数。

【小结】

随着学习的越多,有时候会发现前面学习中,自己理解有偏差,现在总结的只是现阶段的理解,不知道准确不准确,只是目前是这样理解的。

c#小结(4)---面向对象相关推荐

  1. Java如何扑克牌给扑克牌赋值_JAVA学习前十天:小结、面向对象之”扑克牌“例子...

    2016年4月26号正式步入JAVA学习课堂,学习了第一节JAVA课程,由于以前有C语言基础,所以课程有点快! 第一天:学习了教材的第一部分,第一部分总共两章,分别是JAVA简介和JAVA基础语法. ...

  2. Javascript 面向对象编程(一)

    目的 什么是面向对象编程 复习关键字new并且理解它所做的四件事 在我们的代码中使用构造函数来优化我们得代码 使用call和apply来重构构造函数 面向对象编程的定义 基于对象概念的编程模式 这些对 ...

  3. JAVA程序设计----面向对象(上)

    首先还是老样子,先来一点思考题. 1.什么是面向对象? 面向对象是用对象来模拟现实实际的事物,用对象之间的关系描述事物之间的联系. 2.构造方法与普通成员方法的区别? 格式区别:     构造方法和类 ...

  4. 面向对象开发方法概述

    小结: 1.面向对象的软件开发有什么优点? (1)与人类习惯的思维方法一致 (2)稳定性好. (3)可重用性好 (4)较易开发大型软件 (5)可维护性好 2.在软件系统中,为什么说一个独立的不对外提供 ...

  5. java面向对象小知识

    (一).面向对象的由来: 1.60年中期软件危机(software crisis)--落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现的一系列严重问题的现象. 软禁 ...

  6. Python面向对象编程——类的学习

    面向对象编程     面向对象编程--Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数. 面向 ...

  7. Python成长之路【第九篇】:Python基础之面向对象

    一.三大编程范式 正本清源一:有人说,函数式编程就是用函数编程–>错误1 编程范式即编程的方法论,标识一种编程风格 大家学习了基本的Python语法后,大家就可以写Python代码了,然后每个人 ...

  8. (转)Python成长之路【第九篇】:Python基础之面向对象

    一.三大编程范式 正本清源一:有人说,函数式编程就是用函数编程-->错误1 编程范式即编程的方法论,标识一种编程风格 大家学习了基本的Python语法后,大家就可以写Python代码了,然后每个 ...

  9. Javascript面向对象深入-两小时实现坦克大战(含源码+工具+具体流程)

    坦克大战是很多80.90后不可磨灭的童年 记忆,借着这次公开课,我们一起使用 JavaScript面向的方式实现这个小游戏.让大家在这个小游戏的过程中学习面向对象在es6中的实现方式,以游戏制作的方式 ...

  10. C++ 第13课 进阶面向对象 上 ---- (狄泰软件学院)

    面向对象基本概念 面向对象的意义在于 将日常生活中习惯的思维方式引入程序设计中 将需求中的概念直观的映射到解决方案中 以模块为中心构建可复用的软件系统 提高软件产品的可维护性和可扩展性 类和对象是面向 ...

最新文章

  1. 解析Objective-C中多态、动态类型和动态绑定
  2. 详解Adorner Layer(zz)
  3. Java 8:对集合中的值进行排序
  4. 谷歌浏览器flash_谷歌浏览器不支持Flash Player的问题
  5. android 多个textview,Android:多个textview像单个文本
  6. oracle--逻辑对象--bai
  7. 常见Web技术之间的关系,你知道多少?
  8. upper_bound和lower_bound的用法
  9. 推导pca的降维损失_这应该是最全的PCA原理总结了(上)
  10. 处理数据spss乱码
  11. 计操实验 多级反馈队列C语言
  12. K210——声源定位、声音识别
  13. 一种喷涂有可吸收电磁波的水性油漆的飞机外壳
  14. GaussDB数据库基础函数介绍-上
  15. 贝壳找房校招java笔试题_2020年最新贝壳找房java面试题分享
  16. C++学习记录8:定义一个分数类Score和学生类Student
  17. discuz!代码内置颜色大全(收藏)
  18. springboot -- 实现qq登录功能
  19. uni问题:APP端打包后拨打电话功能失效
  20. java hbase 删除数据结构_「从零单排HBase 09」Hbase的那些数据结构和算法

热门文章

  1. android 录音的格式,Android录制声音 录音输输出格式
  2. win11怎么回去win10?四种方法教你!
  3. JS---子类调用父类的方法
  4. java容器内setBounds()确定组件位置
  5. android 2g 3g wifi,2G/3G/4G无线信号放大器 Signal Booster 2G/3G/4G WiFi
  6. 《安德的游戏》和《死者的代言人》
  7. android 自定义酷炫ViewPager切换效果
  8. github文件夹有白色箭头且无法打开的解决方法
  9. 苹果手机邮箱怎么设置_企业邮箱怎么设置别名
  10. 苹果手机如何设置邮箱