面向对象和面向过程

1. 面向过程

  • 当需要实现一个功能的时候,每一个具体的步骤都要亲力亲为,详细处理每一个细节。

2. 面向对象

  • 当需要实现一个功能的时候,不关心具体的步骤,而是找一个已经具有该功能的人来帮忙做。
  • 特点:面向对象思想是一种更符合我们思考习惯的思想,它可以将复杂的事情简单化,并将我们以执行者变成了指挥者。面向对象的语言中,包含了三大基本特征:封装、继承、多态

类和对象

  • 类 :是一组相关属性和行为的集合。可以看成是一类事务的模板。使用事物属性特征和行为来描述该类事物。
  • 属性:就是该事物的状态信息。
  • 行为:就是该事物能够做什么。

类与对象的关系

  1. 类是对一类事物的描述,是抽象的。
  2. 对象是一类事物的实例,是具体的。
  3. 类是对象的模板,对象是类的实体。

类的定义

事物与类的对比

  • 属性:事物的状态信息。
  • 行为:事物能够做什么。

java中用.class描述事物

  • 成员变量:对应事物的属性。
  • 成员方法:对应事物的行为。

注意事项

  1. 成员变量是直接定义在类当中的,在方法外边。
  2. 成员方法不要写static关键字。

通常情况下,一个类并不能直接使用,需要根据类创建一个对象,才能使用。

  1. 寻包:也就是指出需要使用的类,在什么位置。对于和当前类属于同一个包的情况,可以省略导包语句不写。
    import 包名称.类名称;
  2. 创建:格式
    类名称 对象名 = new 类名称();
    Student stu = new Student();
  3. 使用:分两种情况

    • 使用成员变量 对象名.成员变量名
    • 使用成员方法 对象名.成员方法名(参数)

注意事项

  • 如果成员变量没有进行赋值,那么将会有一个默认值,规则和数组一样。当一个对象作为参数,传递到方法当中时,实际上传递去的是对象的地址值。当使用一个对象类型作为方法的返回值时,返回值其实就是对象的地址值。

局部变量和成员变量

  1. 定义的位置不一样(重点)

    • 局部变量:在方法的内部
    • 成员变量:在方法的外部,直接写类当中。
  2. 作用范围不一样(重点)

    • 局部变量:只有方法当中才可以使用,出了方法就不能再用了。
    • 成员变量:整个类全部可以通用。
  3. 默认值不一样(重点)

    • 局部变量:没有默认值,如果想使用,必须手动进行赋值。
    • 成员变量:如果没有赋值,默认会有默认值,规则和数组一样。
    • 方法的参数是局部变量。参数在方法调用时必然会被赋值的。
  4. 内存的位置不一样

    • 局部变量:位于栈内存。
    • 成员变量:位于堆内存。
  5. 生命周期不一样

    • 局部变量:随着方法进栈而诞生,随着方法出栈而消失。
    • 成员变量:随着对象创建而诞生,随着对象被垃圾回收而消失。

Mirico
1 声望0 粉丝

« 上一篇
数组
下一篇 »
方法