C#面向对象(1)
一、面向对象(OOP)
面向过程
面向过程就是分析出解决问题的所需要的步骤,然后每个步骤使用函数实现,使用时将函数依次调用即可
C语言
面向对象
对象:生活中真实存在的事物(电脑、手机、草、树......)
面向对象是把构成问题的事物分解成各个对象,建立对象的目的不是完成步骤,而是为了描述某个对象在整个解决问题的步骤中的行为(功能)
c# java
洗衣服:
面向过程:
1、打开洗衣机盖子
2、把衣服放进去
3、导入洗衣粉
4、点击开始
5、晾衣服
6.....
面向对象:
衣服(被洗)、洗衣机(洗)、洗衣粉(去渍)
汽车:
面向过程:
1、如何启动
2、如何加速
3、如何刹车
面向对象:
1、关系是否有启动、加速、刹车等功能
区别:
面向过程:看重的每个步骤的具体实现,更注重细节
面向对象:看中对象有什么功能,不关系每个功能的具体实现
二、面向对象的特征
封装、继承、多态、抽象
三、类和对象
类:类型,人类,电脑类,飞机类,汽车类,动物类.....
人类:
特点:两手两脚、一个脑袋、一对眼睛、能走、能吃、能睡、能学习、能工作....
凡是具备以上特点的事物,就可以称为人类,而那个事物就是编程中的对象,比如:你们
对象:有属性和行为的事物称为对象
类:具有相同属性和行为的事物的集合称为类
问题:类是一个具体的事物吗?不是,类只是一个抽象的概念
类的体现是对象
类是对象的抽象,对象是类的具体
当一个类不足以描述一个对象时,该类是抽象类,比如:图形
问题:类是对象的模板吗?是,比如:模具
面向对象的主要特点,设计:类
四、类的定义
修饰符 class 类名
{
类成员:属性和方法
}
修饰符:
public:公共的,访问没有权限限制
internal:内部的,自己所在的程序集可以访问
注意:当我们没有显示的指定修饰符,默认internal
属性:变量、常量
方法:
访问修饰符 返回类型 方法名(参数列表)
{
}
实例化对象:
类名 对象名 = new 类名();
对象名.属性;
对象名.方法();
成员变量和成员方法的修饰符:
public:公共的,访问没有限制
internal:内部的,自己所在的程序集可以访问
protected:受保护的,自己所在的类和其子类能访问(继承)
private:私有的,自己能访问
注意:
如果不显示声明修饰符,默认private
权限大小:public > internal > protected > private
通常:类使用public、成员变量使用private、成员方法使用public
命名规范:
1、类名大写开头
2、类中成员变量小写开头
3、类中方法名大小开头
五、封装
生活中:快递、电脑、空调....看不到内部的具体实现,对外提供接口、按钮,用户不关心内部的具体实现,知道怎么用就行
程序中:成员变量使用private修饰,提供属性声明
属性声明:
修饰符 数据类型 属性名
{
get{return 属性}
set{属性=value}
}
通常是提供给外界类使用,常常使用public修饰
为了安全性
C#面向对象(1)的更多相关文章
- angular2系列教程(六)两种pipe:函数式编程与面向对象编程
今天,我们要讲的是angualr2的pipe这个知识点. 例子
- 一起学 Java(二)面向对象
一.方法函数 函数也称为方法,就是定义在类中的具有特定功能的一段独立代码.用于定义功能,提高代码的复用性. 函数的特点1> 定义函数可以将功能代码进行封装,便于对该功能进行复用:2> 函数 ...
- js面向对象学习 - 对象概念及创建对象
原文地址:js面向对象学习笔记 一.对象概念 对象是什么?对象是“无序属性的集合,其属性可以包括基本值,对象或者函数”.也就是一组名值对的无序集合. 对象的特性(不可直接访问),也就是属性包含两种,数 ...
- 前端开发:面向对象与javascript中的面向对象实现(二)构造函数与原型
前端开发:面向对象与javascript中的面向对象实现(二)构造函数与原型 前言(题外话): 有人说拖延症是一个绝症,哎呀治不好了.先不说这是一个每个人都多多少少会有的,也不管它究竟对生活有多么大的 ...
- .NET 基础 一步步 一幕幕[面向对象之对象和类]
对象和类 本篇正式进入面向对象的知识点简述: 何为对象,佛曰:一花一世界,一木一浮生,一草一天堂,一叶一如来,一砂一极乐,一方一净土,一笑一尘缘,一念一清静.可见"万物皆对象". ...
- 简单分析JavaScript中的面向对象
初学JavaScript的时候有人会认为JavaScript不是一门面向对象的语言,因为JS是没有类的概念的,但是这并不代表JavaScript没有对象的存在,而且JavaScript也提供了其它的方 ...
- Java程序员应该了解的10个面向对象设计原则
面向对象设计原则: 是OOPS(Object-Oriented Programming System,面向对象的程序设计系统)编程的核心,但大多数Java程序员追逐像Singleton.Decorat ...
- JavaScript学习笔记(三)——this、原型、javascript面向对象
一.this 在JavaScript中this表示:谁调用它,this就是谁. JavaScript是由对象组成的,一切皆为对象,万物皆为对象.this是一个动态的对象,根据调用的对象不同而发生变化, ...
- 带你一分钟理解闭包--js面向对象编程
上一篇<简单粗暴地理解js原型链--js面向对象编程>没想到能攒到这么多赞,实属意外.分享是个好事情,尤其是分享自己的学习感悟.所以网上关于原型链.闭包.作用域等文章多如牛毛,很多文章写得 ...
- .NET基础拾遗(2)面向对象的实现和异常的处理基础
Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理基础 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开 ...
随机推荐
- JAVA基础第三章-类与对象、抽象类、接口
业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一 ...
- android使用.9图作为背景,内容不能居中的问题解决方案
在xml中使用.9图作为背景,内容不能居中,试了好多方法最后,加一个属性就ok了. android:padding:0dip; 解析:.9图作为背景时,不可拉伸的部分就相当于该空间的padding距离 ...
- 深度学习与计算机视觉:基于Python的神经网络的实现
在前面两篇文章介绍了深度学习的一些基本概念,本文则使用Python实现一个简单的深度神经网络,并使用MNIST数据库进行测试. 神经网络的实现,包括以下内容: 神经网络权值的初始化 正向传播 误差评估 ...
- selinux学习
一.基本概念 1.TE模型的安全上下文 所有的操作系统访问控制都基于主体.客体,以及与他们相关的访问控制属性. 在selinux中,访问控制属性叫做安全上下文.所有对象(文件.进程间通信通道.套接字. ...
- 1.JAVA-Hello World
1.Java开发介绍 J2SE:Java 2 Platform Standard Edition(2005年之后更名为JAVA SE). 包含构成Java语言核心的类.比如:数据库连接.接口定义.数据 ...
- android 系统dialog的应用
应用示例如下: /* * 提示类型dialog */ private void dialog1(){ AlertDialog.Builder builder = new AlertDialog.Bui ...
- sql 语句 获取某张表某列字段最短的某几行数据
sql 语句 获取某张表某列字段最短的某几行数据 SELECT C_name,C_code FROM Catalog where LEN(C_code)=LEN((SELECT top 1 C_cod ...
- 【转载】Sqlserver数据库备份的几种方式
在实际的数据库Sqlserver的运维的过程中,很多时候我们需要做到数据的备份操作,可以做到定时备份,也可以进行手动数据库备份.在实际的过程中,有时候因业务需要备份出完整数据库,而有时候又因为实际业务 ...
- 数据库常用操作SQL语句
禁用触发器: alter table tb disable trigger tir_name 启用触发器: alter table tb enable trigger tir_name
- bat 实现主机hostname的修改
主机实现hostname的修改原理: 修改注册表中的值: hklm\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName 下的 Comp ...