Java面向对象

面向对象

1.面向过程:procedure oriented 简称:pop,解决方法的思路和过程。

2.面向对象:object oriented 简称:oop,找”对象“解决问题。

注意:面向对象的基础是面向过程

面向对象步骤

1.抓特征

        ①”静态特征“:属性,实质就是全局变量。例如:身高、体重、姓名等。

        ②”动态特征“:方法、行为、功能、函数。

2.面向对象适用于解决复杂的问题,面向过程适用于解决简单的问题

        列如:面向对象好比盖饭,我可以吃各种盖饭。

                   面向过程好比蛋炒饭,它始终是蛋炒饭。

3.总结:

        面向对象:找”对象“解决问题        例如:类→创建对象

        如何找对象:

                ①Java中提供的或者别人提供的,可以直接使用。

                ②没有提供的,自己写,在使用。

类与对象

1.类:蓝图、设计稿、模板。

2.抽象类:从众多事物中,抽取共同特性的本质或特征。

        例如:猫→凡是符合这个特性的,就是猫

3.类:具有共性特征事物的抽象。

4.对象:由类创建,具体事物。

单个对象内存图

①将对象的内存图(.class)加载到方法区中,找到main方法进行压栈。

②加载Person到方法区中,在main方法中为变量p开辟空间。

③在堆中以Person为模板,创建Person对象。为Person中的name和age赋初始默认值,这个过程称为默认初始化。

④创建完毕对象的内存首地址值复制给引用变量p。

⑤p.name和p.age根据p找到对象进行赋值。

⑥Show方法进行压栈,show方法中带一个隐式指针,存放该方法由那个对执行。

总结:

        ①创造的对象在堆中存放,对象的属性也在堆中存放。

        ②类加载只加载一次,先去方法中查找是否存在,存在直接调用,不存在才去硬盘上加载。

创建两个对象内存图

 总结:

        ①凡是new操作的,都在堆中创建对象。

        ②属性属于不同对象,每个对象都有自身属性,只能改变自身属性,不能改变其它对象属性

值传递和引用传递

1.值传递

 2.引用传递

总结:

        无论值传递还是引用传递,实质都是值传递。在参数传递过程,对于基本类型传递的是值,对于引用类型传递的是地址。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值