什么是对象?—— 一切皆为对象。Object

生活中常说的“东西”,就是我们程序里所指的对象。

归类——找模型——抽象

类:class,对某类众多对象共同的特点进行抽象出来的模型

对象——(抽象的过程)——类

类——(实例化)——对象

类一般包括两类东西:变量(名词,成员变量)  函数(动词,成员方法)

面向对象三大特性:封装,继承,多态。

封装:1.不同类的变量只属于各自的类;2.不同对象的成员变量只属于各自的对象,彼此不影响;3,对象中的变量需要通过方法(函数)实现操作,比较安全。

继承:父类,子类。子类可以从父类继承下父类的成员和方法。

多态:某类众多不同对象在执行的时候,表现出来的形态各异,这种现象成为多态。

构造函数:特殊的成员函数。如果不写构造函数,系统会自动生成一个默认的构造函数。

  1. 写法特殊:没有返回值,函数名只能与类名一样
  2. 执行特殊:类在实例化(new出来的)的时候自动执行。构造函数是最早执行的成员函数。构造函数是用来生成对象的函数。

public MyDate()

{

_Year = 2014;

_Month = 10;

_Day = 1;

}

主要作用:对象实例化生成的时间,做一些初始化的操作。

重载:多个函数的函数名相同,参数不同(个数,类型)的函数就形成了重载。

重载只与函数名和参数有关,与返回值无关。

This:当前对象,不是当前类。

  1. this.成员变量(成员方法)
  2. this调用当前对象的其他构造函数。Public Bird(string name,string ):this(name)

is:对象 is 类名

对象属于后面的类,则返回true,否则返回false

可以把类分成几部分,放在不同的文件中(两个类),partial写在类的class前面,它代表,此处写的类是类的一部分,还可以继续用partial class来补充类的扩展。

partial class circle

{

}

一、属性

类中的方法(函数)一般有三类:构造方法,属性方法,行为方法。

在变量名上右键——重构——封装字段

get{ }     set{ }

public int r

{

get { return r; }

set { r=value;}

}

注意:1.属性是用来为成员变量赋值和取值的,它有替代属性方法的作用

2.属性定义的时候,属性名后没有小括号

3.属性都是public

4.属性中只能包括两部分,即get部分和set部分。代码也只能写在get,set的花括号中

5.如果属性中只有set,没有get,则成为只读属性,反之,成为只写属性,二者都有成为可读写属性。

静态:

Static 静态成员变量   在内存中占用小,都可以访问

静态成员,静态变量,静态方法,静态属性

静态成员属于类的,不属于实例。例如:抽纸的标准抽数。

静态变量在内存中只保存一份,不像实例那样,每个对象都保存一份。

在C#中,在当前类的花括号之外,静态成员,只能用类名来调用,不能用实例名来调用。而实例成员只能用对象来调用,不能用类名来调用。

例如:抽纸的标准抽数是静态成员,200张;抽纸中可用的实际张数应当是实例成员。

继承:父类与子类

  1. public,protected修改的成员可以被继承到子类去。Private修饰的成员,无法被子类继承。
  2. 单继承:一个父类可以派生多个子类,但每个子类只能有一个父类。
  3. 实例化子类的时候,会先执行父类的构造函数,再执行子类的构造函数。
  4. Base关键字,用来调用父类的相关成员,base.xxxx()调用父类的成员方法。Base(…)调用父类构造函数
  5. 如果父类中有且只有一个带参的构造函数,则其子类必须要有带相应参数的函数,并且通过base()把参数

20141011C#面向对象基础的更多相关文章

  1. 了解JavaScript 面向对象基础 & 原型与对象

    面向对象语言中的对象 老是能听到什么基于对象, 面向对象. 什么是对象, 如果有面向对象基础的人可以无视了, 下面举个简单的例子给大家讲讲面向对象中, 对象的定义, 这个是比较通用的, 不过对于JS来 ...

  2. MYSQL、PHP基础、面向对象基础简单复习总结

    一.MYSQL         1.配置MySql                 第一步安装服务器(apache).                 第二部安装MySql界面程序         2 ...

  3. 从零开始学Python第六周:面向对象基础(需修改)

    标签(空格分隔): 面向对象 一,面向对象基础 (1)面向对象概述 面向过程:根据业务逻辑从上到下写代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类 ...

  4. python面向对象基础

    面向对象基础 1. 简述 编程方式: 面向过程: 根据代码在脚本的堆叠顺序,从上到下依次执行 函数式编程:将相同功能的代码封装到函数中,直接调用即可,减少代码重复性 面向对象:对函数进行分类和封装,将 ...

  5. java基础学习05(面向对象基础02)

    面向对象基础02 实现的目标 1.String类的使用2.掌握this关键字的使用3.掌握static关键字的使用4.了解内部类 String类 实例化String对象一个字符串就是一个String类 ...

  6. java基础学习05(面向对象基础01--类实例分析)

    面向对象基础01(类实例分析) 实现的目标 1.如何分析一个类(类的基本分析思路) 分析的思路 1.根据要求写出类所包含的属性2.所有的属性都必须进行封装(private)3.封装之后的属性通过set ...

  7. java基础学习05(面向对象基础01)

    面向对象基础01 1.理解面向对象的概念 2.掌握类与对象的概念3.掌握类的封装性4.掌握类构造方法的使用 实现的目标 1.类与对象的关系.定义.使用 2.对象的创建格式,可以创建多个对象3.对象的内 ...

  8. 8.python笔记之面向对象基础

    title: 8.Python笔记之面向对象基础 date: 2016-02-21 15:10:35 tags: Python categories: Python --- 面向对象思维导图 (来自1 ...

  9. 【重走Android之路】【Java面向对象基础(三)】面向对象思想

    [重走Android之路][基础篇(三)][Java面向对象基础]面向对象思想   1 面向对象的WWH   1.1 What--什么是面向对象         首先,要理解“对象”.在Thinkin ...

随机推荐

  1. 转载: Nova-Router 分析

    很早的实现了,nova代码已经做了很多修改了. 以创建实例 URL(http://10.191.7.32:8773/v1.1/service?*****)为例说明 Router 的执行流程 1. 依据 ...

  2. 关于关注和取消关注的nodejs写法

    本例子的关注和取消关注,是通过ajax的方法实现的:nodejs后台写好api接口:响应前台的ajax 先看ajax的代码实现: // 用户关注标签 function subscribe(uid, t ...

  3. aui

    #encoding:utf-8import wximport wx.auiclass MyFrame(wx.Frame): def __init__(self, *args, **kwargs): w ...

  4. 怎样安装pip--python的包管理工具

    pip是python的包管理工具,使用它来安装python的模块很方便. pip支持的操作系统:Unix/Linux, OS X, and Windows. 支持的python版本号:2.6, 2.7 ...

  5. 【APP UI 设计模式】(一)APP UI 设计原则和流程

    一.基本原则         1.用户体验原则UCD,以用户为中心去设计         2.设计模式是可重用的设计规范实现         3.反模式是糟糕设计的典型,极力避免使用         ...

  6. 用程序对hdfs进行操作。

    调试加安装了半天,怎么也没有配置好怎么通过Eclipse直接连接hdfs,最后我还是打成一个jar包放到Linux虚拟机中运行的. 运行命令Java -jar  XXX.jar. 当中对hdfs的操作 ...

  7. 微软将Bing变开放平台 同谷歌争夺开发者

    微软在编译者大会上宣布将Bing作为平台开放,此举显然旨在改变谷歌(微博)一家独大的局面. 报道称,微软知道如何创建平台.因此当它发布新平台时,都值得业界仔细关注.就在上周之前,微软Bing给大家的印 ...

  8. 让ie支持placeholder属性,一段js搞定

    placeholder属性真的是超级好用的新属性,可惜,只有新版浏览器才支持,为了写出输入框贴心提示,老方法就是加span标签覆盖,营造出placeholder提示的感觉,现在安利一款好用的js,好用 ...

  9. HBASE学习笔记--API

    HBaseConfiguration HBaseConfiguration是每一个hbase client都会使用到的对象,它代表的是HBase配置信息.它有两种构造方式: public HBaseC ...

  10. Android App开之标注切图

    身为一个android开发狗,真是艰辛啊,适配不好做,Rom特性不好搞,连切图有时候都得自己上啊,设计师MM都不敢去惹呢,新技能Get开始. 其实,都是小case了,我有度娘和谷哥! 因为,有了psd ...