面向对象(day6)

来源:互联网 发布:psd头像源码免费下载 编辑:程序博客网 时间:2024/06/05 15:38


第六天面向对象
1. 什么是面向对象(oop)
  其实是一种思想,解决问题,处理问题,将生活中的实际情况
  放到计算机中去实现
2. 由来
  由面向过程,演化而来的
  以前对于过程,执行者
  现在对于对象,指挥者
  我们要做的事情,就是找对象,指挥对象做事情
  没有对象,创造对象,并指挥他做事情
  完成飙车的功能,找到赛车,指挥赛车做事情
  完成飙车,没有赛车,创造赛车,指挥赛车做事情
3. 面向对象的思想,实际生活中的体验
  洗衣服,对象是洗衣机
  指挥洗衣机做事情,时间,洗涤类型,转速,脱水,烘干
4. 类
      在现实生活中,可是使用人类的语言描述现实中存在的事物
      实例:看上一辆汽车,时风,三个轮子,运货
      如何去使用计算机中的语言,描述现实中存在的事物呢
      对于java语言,描述现实中存在的事物,用的是类的形式体现
      类,是描述现实中存在的事物的
      class Person{
        String name;//名词 属性
 int age;
 public void eat(){//动词 行为
 }
      }
      不真对具体的某一个人,针对的是所有的人
      描述人后,还没有具体的人出现,具体的人是怎么出现的呢
      使用一个关键字 new 出来的
5. 类和对象之间的关系
     类描述对象的,类就是一张蓝图,或者是生产图纸
     对象,就是根据这个图纸,生产出来的产品
     图纸抽象的概念,人类,图纸
     建立出来,不同的人
     用代码体现,建立对象,并指挥对象
6. 建立对象,指挥对象做事情
     建立对象 格式
     对象调用方法,和调用属性的格式
7. 匿名对象
      对象没有名字
      其实是一种简化形式,就有弊端
      匿名对象,只能使用一次
      当你对对象中的方法,只进行一次调用的时候,使用匿名对象
      匿名对象,调用对象中的成员属性,毫无意义
      匿名对象,可以当做参数进行传递
-----面像对象思想,有三个特征 ,封装,继承,多态
8. 封装
     封装就是将对像中的内容隐藏起来,不对外直接暴露
     如果其他程序,想访问对象中隐藏起来的内容,可通过间接访问形式
     private权限修饰符,控制权限用的,被private修饰的属性,或者是方法,只能在本类访问
     提高程序的安全性
     隔离隐私,隔离变化
     方便后期维护
     注意:私有只是封装的一种体现形式,private并不完全代表私有
 封装在生活中的体现:
    看电视遥控器,播台
    笔记本:主板,硬盘 CPU 内存,显卡,声卡,网卡...线接好了
    加了一个封装体,外壳
    日后程序开发中,不对外提供的内容,使用private进行修饰
    对象中的所有属性,都要求私有化
    提供方法,来访问我这个程序中的属性
    提供的这个方法,称为get set
9. this关键字
      this可以区别方法的局部变量,和类中的成员变量,成员属性
      this,表示本类对象的引用
      哪个对象调用的,this就表示哪一个对象
  注意:this. 和this()的用法。this(有参数/无参数)  用于调用本类相应的构造函数  只能在本类构造方法中使用super(有参数/无参数) 用于调用父类相应的构造函数this.  后跟方法或属性 指示本类的方法或属性super. 后跟方法或属性(父类中指明的public protected)
10. 成员变量(字段Field),和局部变量的区别
     成员变量,成员属性,全局变量
     局部变量
 10.1 作用范围不同
     成员变量,作用于整个类中,成员变量定义在了类中
     局部变量,定义在函数中,或者是语句中,当函数或者语句以外是不能访问的
10.2 存储位置不同
     成员变量,跟对对象,在对内存中存储
     局部变量,跟随函数存储
10.3 生命周期不同
     成员变量,存储在堆内存中,跟随对象的消失而消失
     局部变量,存储在栈内存,随着函数,或者是语句的结束而消失,生命周期最短
 10.4 初始化值的不同
     成员变量,跟随对象,在堆内存中存储的,有默认初始化值
     局部变量,没有默认值的,必须手动赋值,才能使用
11. 构造方法
      构造方法,方法名,必须和类名一摸一样
      构造方法,没有返回值,不需要写void,也不需要写return
      构造方法,只在建立对象的时候,运行一次,仅仅一次 new Person()
      只要是类,是class定义的类,就有构造方法
      不写,会有默认的,是一个空参数的构造方法
      用于给对象进行初始化,换句话说,构造方法,可以用在,建立对象时候,给对象中的
      成员变量赋值
      选加载成员变量,对象才会去调用构造方法

 


原创粉丝点击