zoukankan      html  css  js  c++  java
  • 面向对象 20141010

    面向对象:
    一、什么是对象?——一切皆为对象。object(目标)

    生活中常说的“东西”,就是我们程序里所指得对象.
    生活中遇到的“东西”,我们都会潜意识中进行归类--找模型--抽象--把好多事物的共同点提取出来.

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

    对象(生活中的)----(抽象)----类

    类---------(实例)---------对象(程序中的)

    1.类中一般包括两类内容:

    1)变量(名词,成员变量,成员属性)

    2)函数(动词,成员函数,成员方法)

    PS:成员表示在类中.

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

    1)封装:

    A.不同类的变量只属于各自的类.

    B.不同对象的成员变量只属于各自的对象,彼此不影响.

    C.对象中的变量需要通过方法(函数)实现操作,增强数据的安全性.

    2)继承:protected(保护不受访问),两个相同类提取更高层次的抽象.

         父类,子类.子类可以从父类继承下父类的成员变量和成员方法.

    3)多态:某类众多不同对象在执行的时候,表现出来的形态各异,这种现象称为多态.(必须在继承基础上实现多态)

    3.如何定义类? class 类名

    4.如何实例化对象?new 出来

    public可以直接赋值,不用public,要写方法,更安全,因可限制赋值范围--
    public void SetAge(int a)
     {
         Age=a
     }

    值类型:int i=10
    引用类型:Dog d=new Dog

    三、构造函数:特殊的成员函数(一般是public).如果不写构造函数,系统会自动生成一个默认的构造函数.

    1.写法特殊:没有返回值,函数名只能与类名一样.

    2.执行特殊:类在实例化(new出来)的时候自动执行.构造函数是最早执行的成员函数.构造函数是用来生成对象的函数.

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

    重载:多个函数,他们的函数名相同,但参数不同(个数,类型)的函数就形成了重载.
    ps:重载只有函数名和形参有关,与返回类型无关.

    四、this:当前对象,不是当前类.

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

    is: 对象 is 类名

    判断对象是否属于后面的类,属于则返回true,否则返回false.

    写函数需要有形参,接收类型尽量用父类型定义形参.传任何一个子类型都可以,因子类型都继承于父类型.

  • 相关阅读:
    MapReduce WordCount Combiner程序
    Spring Boot 单元测试
    Spring Boot @SpringApplicationConfiguration 不能导入的问题
    西西弗斯 滚石上山
    《Effective Modern C++》翻译--简单介绍
    算法排序问题
    MySQL Study之--MySQL schema_information数据库
    HDOJ 4251 The Famous ICPC Team Again
    一、OpenStack入门 之 初步认识
    python模块
  • 原文地址:https://www.cnblogs.com/DORCASQING/p/4017589.html
Copyright © 2011-2022 走看看