• 04、面向对象


    1、面向对象概念:

       *面向对象是相对面向过程而言

       *面向对象和面向过程都是一种思想

       *面向过程强调的是功能行为

       *面向对象将功能封装进对象,强调具备了功能的对象。

       *面向对象是基于面向过程的

    2、面向对象和面向过程的区别:

      *举例:

        把大象装进冰箱;

          面向过程:

            **打开冰箱;

            **存储大象:

            **关上冰箱。

            对于面向过程思想,强调的是过程(动作)。

              如C语言

          面向对象:

            **冰箱打开

            **冰箱存储

            **冰箱关闭

               如C++  Java  C#

               对于面向对象思想,强调的是对象(实体)。

    3、特点:

      *面向对象就是一种常见的思想。符合人们的思考习惯

      *面向对象的出现,将复杂的问题简单化

      *面向对象的出现,让曾经在过程中的执行者,变成了对象中的指挥者。

      *有对象用对象,没对象造对象用对象,维护对象之间的关系

     

        面向对象的特征:

        封装(encapsulation)

        继承(inheritance)

        多态

     

      完成需求时:

        先要去找具有所需的功能的对象来用。

        如果该对象不存在,那么创建一个具有所需功能的对象。

        这样简化开发并提高复用。

     

      开发的过程:其实就是不断的创建对象,使用对象,指挥对象做事情。

      设计的过程:其实就是在管理和维护对象之间的关系。

     

      构造代码块

         作用:给对象进行初始化。

         对象一建立就运行,而且还优先于构造函数执行。

         构造代码块和构造函数的区别:

              构造代码块是给所有对象进行统一初始化,而构造函数是给对应的对象进行初始化

       

      构造代码块中定义的是不同的对象共性的初始化内容。

    4、类与对象

      (1)类:用java语言对现实生活中的事物进行描述。

          通过类的形式来体现。

          怎样描述?

            对于事物描述通常只关注两个方面

            一个是属性,一个行为

            只要明确该事物的属性和行为,并定义在类中即可。

        对象:其实就是该类事物实实在在存在的个体。

     

      (2)类与对象之间的关系?

        类:事物的描述

        对象:该类事物的实例。在java中通过new来创建。

     

        类类型引用变量,指向了该类对象。

        定义类就是定义类的成员:

        成员:成员变量-->属性

            成员函数-->行为。

             对于同一类事物可以抽取它们的共性的内容,定义在类中。

           可以理解为:

            类就是图纸

            汽车就是堆内存中的对象

     
     

      代码示例:

    class Car{//对Car这类事物进行描述
    
        String color = "red";
    
        int num = 4;
    
        void show(){
    
            System.out.println("color="+color+"..num="+num);
    
        }
    
    }
    
    class CarDemo{
    
        public static void main(String[] args){
    
            Car c = new Car();//建立对象
    
            c.color = "black";//对对象的属性进行修改
    
            c.show();//使用对象的功能。
    
        }
    
    }

      

      (3)成员变量和局部变量的区别:

        *成员变量定义在类中,整个类中都可以访问。

         局部变量定义在函数、语句、局部代码块中,只在所属的区域有效。

        *成员变量存在于堆内存的对象中。

         局部变量存在于栈内存的方法中。

        *成员变量随着对象的创建而存在,随着对象的消失而消失

         局部变量随着所属区域的执行存在,随着所属区域的结束而释放。

        *成员变量都有默认初始值

         局部变量没有默认初始值。

     

     (4)匿名对象。没有名字的对象。

        new Car();匿名对象。其实就是定义对象的简写形式

        *当对象对方法仅进行一次调用的时候,就可以简化成匿名对象。

        *匿名对象可以作为实际参数进行传递。

     

  • 相关阅读:
    那些年我们写过的T-SQL(下篇)(转)
    好的架构是进化来的,不是设计来的
    dhcpsrv:windows系统的优秀开源免费dhcp serve软件
    PXE(preboot execution environment):【网络】预启动执行环节:安装 debian 9系列:成功
    PXE(preboot execution environment):【网络】预启动执行环节:安装 ubuntu、rehat系列:成功
    问题:UltraISO:这个软件有问题,它制作的iso文件会造成无法正确识别。用PowerISO吧
    自windows8以后,所有版本(专业版、企业版、旗舰版)都支持从 vhd 启动
    SpringCloud Feign
    SpringCloud Netflix Ribbon(负载均衡)
    SpringCloud Netflix Eureka(服务注册/发现)
  • 原文地址:https://www.cnblogs.com/zyh-blog/p/3162334.html
Copyright © 2020-2023  润新知