Java SE笔记: 面向对象基础

关于系统默认值:

  • 基本数据类型
    • byte,short,int,long 0
    • float,double 0.0
    • boolean false
    • char \u0000
  • 引用数据类型:null

面向过程与面向对象的区别(盖饭、蛋炒饭)

  • 炒饭对应为面向过程,蛋和饭混为一个整体,当客户需求改变时,如客户想吃别的炒饭,则要把所有饭全部挑出来,对应程序中要修改各个模块的各个方法;
  • 而盖饭对应面向对象,当客户需求改变时,只需要把盖的东西换成客户想要的即可,两个对象耦合度很低,只通过盖这个动作协作起来。

为什么会出现面向对象分析方法?
因为现实世界太复杂多变,面向过程的分析方法无法满足

面向过程?
采用面向过程必须了解整个过程, 每个步骤都有因果关系, 每个因果关系都构成了一个步骤,多个步骤就构成了一个系统, 因为存在因果关系每个步骤很难分离, 非常紧密, 当任何一步骤出现问题,将会影响到所有的系统。如:采用面向过程生产电脑,那么他不会分 CPU 、主板和硬盘,它会按照电脑的工作流程一次成型。

面向对象?
面向对象对会将现实世界分割成不同的单元(对象) ,实现各个对象,如果完成某个功能,只需要将各个对象协作起来就可以。

面向对象的三大特性

  1. 封装
  2. 继承
  3. 多态

类与对象的概念

类是对具有共性事物的抽象描述,是在概念上的一个定义,那么如何发现类呢?
通常根据名词(概念) 来发现类,如在成绩管理系统中:学生、班级、课程、成绩
学生—张三
班级—622
课程—J2SE
成绩—张三成绩
以上“张三” 、 “622” 、 “J2SE”和“张三的成绩”他们是具体存在的,称为对象,也叫实例
也就是说一个类的具体化(实例化) ,就是对象或实例
为什么面向对象成为主流技术, 主要就是因为更符合人的思维模式, 更容易的分析现实世界,
所以在程序设计中也采用了面向对象的技术, 从软件的开发的生命周期来看, 基于面向对象
可以分为三个阶段:

  1. OOA(面向对象的分析)
  2. OOD(面向对象的设计)
  3. OOP(面向对象的编程)—–Java 就是一个纯面向对象的语言

通过以上分析,大家应该了解:
类=属性+方法
属性来源于类的状态,而方法来源于动作
以上模型完全可以使用面向对象的语言,如 Java 来实现

对象的存储方式:
对象存储在堆中,所以我们定义的stu1只能称为引用,不能称为对象!

局部变量和成员变量:
以上属性称为成员变量,局部变量是在方法中定义的变量,方法的参数,方法的返回值, 局部变量使用前必须初始化,而成员变量会默认初始化,初始化的值名为该类型的默认值
一个类可以创建 N 个对象,成员变量只属于当前的对象(只属于对象,不属于类) ,只有通过对象才可以访问成员变量,通过类不能直接访问成员变量!

文章目录
  1. 1. 类与对象的概念