`
scarlettli
  • 浏览: 57175 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

面向对象

    博客分类:
  • java
阅读更多
-----面像对象思想,有三个特征 ,封装,继承,多态
1. 什么是面向对象(oop)
  其实是一种思想,解决问题,处理问题,将生活中的实际情况
  放到计算机中去实现

2. 由来
  由面向过程,演化而来的
  以前对于过程,执行者
  现在对于对象,指挥者
  我们要做的事情,就是找对象,指挥对象做事情
  没有对象,创造对象,并指挥他做事情


3. 面向对象的思想,实际生活中的体验
    洗衣服,对象是洗衣机
    指挥洗衣机做事情,时间,洗涤类型,转速,脱水,烘干



4. 类
    在现实生活中,可是使用人类的语言描述现实中存在的事物
      实例:看上一辆汽车,时风,三个轮子,运货
    如何去使用计算机中的语言,描述现实中存在的事物呢
      对于java语言,描述现实中存在的事物,用的是类的形式体现
      类,是描述现实中存在的事物的
      class Person{
        String name;//名词 属性
int age;
public void eat(){//动词 行为

}
      }
      不针对具体的某一个人,针对的是所有的人
      描述人后,还没有具体的人出现,具体的人是怎么出现的呢
      使用一个关键字 new 出来的

5. 类和对象之间的关系
    类描述对象的,类就是一张蓝图,或者是生产图纸
    对象,就是根据这个图纸,生产出来的产品
    图纸抽象的概念,人类,图纸
    建立出来,不同的人
    用代码体现,建立对象,并指挥对象

6. 建立对象的格式  类名 变量 = new 类名();
   
7. 匿名对象
    没有名字的对象
    其实是一种简化形式,就有弊端
    匿名对象,只能使用一次
    当你对对象中的方法,只进行一次调用的时候,使用匿名对象
    匿名对象,调用对象中的成员属性是毫无意义的
    匿名对象,可以当做参数进行传递


8. 封装
    封装就是将对像中的内容隐藏起来,不对外直接暴露
    如果其他程序,想访问对象中隐藏起来的内容,可通过间接访问形式
    private权限修饰符,控制权限用的,被private修饰的属性,或者是方法,只能在本类访问
    提高程序的安全性
    隔离隐私,隔离变化
    方便后期维护
    注意:私有只是封装的一种体现形式,private并不完全代表私有

    封装在生活中的体现:
    看电视遥控器,播台
    笔记本:主板,硬盘 CPU 内存,显卡,声卡,网卡...线接好了
    加了一个封装体,外壳
    日后程序开发中,不对外提供的内容,使用private进行修饰
    对象中的所有属性,都要求私有化
    提供方法,来访问我这个程序中的属性
    提供的这个方法,称为get set

9. this关键字
    this可以区别方法的局部变量,和类中的成员变量,成员属性
    this,表示本类对象的引用
    哪个对象调用的,this就表示哪一个对象

10. 成员变量(字段Field),和局部变量的区别
    成员变量,成员属性,全局变量
    局部变量

  10.1 作用范围不同
      成员变量,作用于整个类中,成员变量定义在了类中
      局部变量,定义在函数中,或者是语句中,当函数或者语句以外是不能访问的

  10.2 存储位置不同
      成员变量,跟随对象,在堆内存中存储
      局部变量,跟随函数存储

  10.3 生命周期不同
      成员变量,存储在堆内存中,跟随对象的消失而消失
      局部变量,存储在栈内存,随着函数,或者是语句的结束而消失,生命周期最短

  10.4 初始化值的不同
      成员变量,跟随对象,在堆内存中存储的,有默认初始化值
      局部变量,没有默认值的,必须手动赋值,才能使用

11. 构造方法
    构造方法,方法名,必须和类名一模一样
    构造方法,没有返回值,不需要写void,也不需要写return
    构造方法,只在建立对象的时候,运行一次,仅仅一次 new Person()
    只要是类,是class定义的类,就有构造方法
    如果类里面没有写构造方法,会有默认的,默认的构造方法是一个空参数的构造方法
    用于给对象进行初始化,换句话说,构造方法,可以用在,建立对象时候,给对象中的成员变量赋值 
    先加载成员变量,对象才会去调用构造方法
    构造方法具有重载特性,通过参数列表来进行区分和调用

分享到:
评论

相关推荐

    易语言面向对象编程 面向对象学习

    易语言面向对象学习 1 一.枯燥的理论 2 1.对象和类 2 2.类的“成员”与“方法” 2 3.实例化 2 4.继承 3 二.牛刀小试 3 1.定义一个类,生成实例对象 3 2.“_初始化” 与 “_销毁” 5 三.一个更丰富的“员工...

    plc面向对象编程架构与实现

    面向对象编程是计算机语言的一种先进的编程模式,在工业控制系统的PLC程序中也可以采用这种设计思想,虽然我们无法实现面向对象的很多特点如“继承”,甚至于它根本就不具备面向对象编程语言的特点,但面向对象编程...

    面向对象葵花宝典-电子版

    面向对象是目前最流行的一种程序设计和实现思想,无论你是从事企业级开发、互联网应用开发,还是手 机软件开发,都会使用到面向对象的技术;主流的编程语言中,C++,Java,C#,PHP,Python等都是支持 面向对象的语言;...

    面向对象概要设计模板

    面向对象概要设计模板 面向对象设计是一种软件设计方法,它强调对象之间的交互和协作,以达到软件系统的高内聚、低耦合的目标。在软件设计中,面向对象设计方法可以帮助开发者更好地理解系统的需求和行为,从而提高...

    实用面向对象软件工程教程

    本教程“实用面向对象软件工程教程”旨在深入探讨面向对象分析(OOA)和面向对象设计(OOD)的关键原则,帮助开发者构建高质量、可维护的软件系统。 在面向对象分析阶段,我们首先理解问题域,识别出关键实体和它们...

    面向对象 面向对象 面向对象

    面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它基于“对象”的概念,通过封装、继承和多态等核心特性,实现了代码的复用和模块化,极大地提高了软件开发的效率和可维护性。...

    Python 3面向对象编程

    Python 是一种面向对象的解释型语言,面向对象是其非常重要的特性。《Python 3面向对象编程》通过Python 的数据结构、语法、设计模式,从简单到复杂,从初级到高级,一步步通过例子来展示了Python 中面向对象的概念...

    面向对象分析与设计UML2.0(PDF)

    详细介绍了面向对象的分析与设计,全面探讨了面向对象概念、软件开发过程、UML和多层技术。本书使用最常见的技术和方法,通过一个贯穿全书的案例分析,对面向对象的软件开发过程和使用面向对象技术的编程过程进行了...

    面向过程、面向对象、面向组件、面向服务软件架构的分析与比较

    面向过程、面向对象、面向组件、面向服务软件架构的分析与比较 软件开发历程与架构演进 软件开发从汇编语言、过程式语言、面向对象、面向组件发展到面向服务,这一进程不仅反映了编程技术的不断进步,更是软件工程...

    软件工程面向对象分析实验报告

    面向对象分析(Object-Oriented Analysis,OOA)是软件工程中的一种重要方法,它着重于从实际问题出发,抽象出问题域内的对象及其相互关系,以构建问题域模型。在“软件工程-张海藩编著--面向对象分析实验报告”中,...

    面向对象软件工程

    《面向对象软件工程》 作者:Stephen.R.Schach 学校:(美)范德比尔特大学 书名原名:Objected-Oriented Software Engineering 目录: 第一部分 面向对象软件工程简介  第一章 面向对象软件工程的范畴  第二章 ...

    java面向对象编程源码

    本书内容由浅入深,紧密结合实际,利用大量典型实例,详细讲解Java面向对象的编程思想、编程语法和设计模式,介绍常见Java类库的用法,总结优化 Java编程的各种宝贵经验,深入阐述Java虚拟机执行Java程序的原理。...

    漫画面向对象编程 Java

    借助于漫画展示的形式,面向对象的简、由类创建一个对象的方法、类的编写与对象的创建、类的构造函数、类的方法、修饰符、Java中的封装/继承/多态等特征、Java中的线程、用Java创建一个小世界、多线程共享数据,以及...

    C++面向对象程序设计教程——课件PPT

    C++是一种强大的编程语言,以其面向对象特性而闻名,它结合了过程化编程和面向对象编程的优势。在“C++面向对象程序设计教程——课件PPT”中,我们可以深入学习这一主题,由陈维兴和林小茶编著,清华大学出版社出版...

    面向对象JavaScript精要(英文原版pdf)

    ### 面向对象JavaScript精要 #### 一、书籍概览 本书《面向对象JavaScript精要》由Nicholas C. Zakas编写,是面向对象编程领域中的权威指南之一,尤其针对JavaScript这门语言。作者深入浅出地介绍了面向对象编程的...

    Matlab面向对象编程

    Matlab面向对象编程是一种在MATLAB环境下通过面向对象的方法来组织和构造程序代码的技术。面向对象编程(OOP)的基本特征包括抽象、封装、继承和多态。以下是根据给定的文件信息,对这些知识点的详细解释: 1. 抽象:...

Global site tag (gtag.js) - Google Analytics