JavaSE 面向对象之类与对象

本文深入探讨了面向对象编程的基本思想,对比了面向过程与面向对象的编程方式,阐述了面向对象的三大特性:封装、继承和多态,并通过实例详细讲解了类与对象的概念及其在Java中的应用。

面向对象

1. 思想

1.1 思想概述
 面向过程:完成一个需求的步骤:首先是要弄清楚做什么,分析怎么做,最后通过代码实现。每一个步骤需要我们参与去操作和实现。面向过程就是面向具体每一个步骤和过程,把每一个步骤和过程完成,然后由这些功能方法相互调用,完成需求。面向过程的代表语言:C语言
 面向对象思想概述:当需求简单时,我们可以每一步都参与操作。但如果需求增加,功能复杂,那么如果要实现每一步骤就很麻烦。面向对象思想就是把这些功能进行封装,把功能类似的封装在一起。用的时候,找到对应的类。
1.2  面向对象思想特点
    a:是一种更符合我们思想习惯的思想 懒人思想
	b:可以将复杂的事情简单化 
	c:将我们从执行者变成了指挥者,角色发生了转换

1.2 思想举例
A:举例:
	洗衣服:换下脏衣服---盛水----浸泡------手搓----漂清---晾干
	全自动洗衣机----------- 一键洗衣
B:面向对象特征
	封装(encapsulation)
	继承(inheritance)
	多态(polymorphism)
C:面向对象开发
	就是不断的创建对象,使用对象,指挥对象做事情。

2. 类与对象

2.1 如何描述现实世界事物
A:举例: 描述学生事物:姓名,年龄,性别
                              学习,吃饭,睡觉
B: 属性:该事物的描述信息
   行为:就是该事物可以做什么
      Java语言最基本的单位是类,所以,就应该把事物用一个类来体现 
   事物             类
   属性             成员变量
  行为             成员方法
C:定义类就是定义类的成员(成员变量和成员方法)
  a.成员变量:和定义变量一样,位置发生变化。在类中,方法外。
  b.成员方法:和定义方法一样,去掉static   
D:类和对象的概念
  a.类:是一组相关的属性和行为的集合
  b.对象:是该类事物的具体体现
  c.举例:类        学生
         对象      班长(一个对象)
2.2 学生类的定义
A:学生事物
	属性:  姓名 , 年龄 , 地址  ...
	行为:  吃饭 , 睡觉 , 上课  ...
B:学生事物与学生类的对应关系
	属性   -----  成员变量
	行为   -----  成员方法
C:案例演示
	根据分析,完成学生类代码

在这里插入图片描述
在这里插入图片描述

2.3手机类的定义
   A:模仿学生类,完成手机类

在这里插入图片描述
在这里插入图片描述

2.4 学生类的使用
A:文件名问题:在一个Java文件中写两个类:一个基本类,一个测试类。
建议:文件名称和测试类名称一致
B:如何使用呢?
	创建对象使用。
C:如何创建对象呢?
	格式:类名 对象名 = new 类名();
D:如何使用成员变量呢?
	格式:对象名.变量名
E:如何使用成员方法呢?
	格式:对象名.方法名(...)

在这里插入图片描述
在这里插入图片描述

2.5一个对象的内存图
A:画图演示:	一个对象

在这里插入图片描述

2.6 二个对象的内存图
A:画图演示:	二个不同的对象

在这里插入图片描述

2.7 三个引用二个对象的内存图
A:画图演示:	三个引用,有两个对象的引用指向同一个地址

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.成员变量和局部变量的区别

A:在类中的位置不同
	成员变量:在类中方法外
	局部变量:在方法定义中或者方法声明上
B:在内存中的位置不同
	成员变量:在堆内存
	局部变量:在栈内存
C:生命周期不同
	成员变量:随着对象的创建而存在,随着对象的消失而消失
	局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
D:初始化值不同
	成员变量:有默认初始化值
	局部变量:没有默认初始化值,必须定义,赋值,然后才能使用。
	
注意事项::	局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用的是就近原则。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值