黑马程序员——Java基础----面向对象(概述)(1)

                                       ——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——- 

面向对象(概述_类、对象等)

一、概述

面向过程:一种思想,强调的是功能行为.(执行者)
面向对象:将复杂是问题简单化(指挥者)
面向对象是一种思想,它可以是复杂问题简单化。它可以是使我们角色发生转变,从执行者变成指挥者。(举个例子说明:)


如:把大象装进冰箱。
面向过程:第一步:打开,第二步:存储。第三步:关闭(强调动作)
面向对象:操作的是冰箱这个对象,冰箱有这几个功能。(强调对象)

原理图:



例如:人开门  开是人的功能还是门的功能?

开是门的功能,而不是人的功能。人是调用门的开门的功能。只有门只能开多少度。。。。等细节信息。

一切皆对象。   java中有对象拿过来用,没有对象自己造对象。


开发的过程 无非是:找对象,建立对象,使用对象,并维护对象之间的关系。(对象之间都是存在关系的)

二、类和对象?

1、类:就是对显示生活中的描述。

2、对象:就是这类食物实实在在存在的个体。

对象:是在java中通过一个new操作符所产生的一个实体,这个实体在堆内存当中。

像数组一样,对象也是用于存储数据的,凡是用于存储数据的,我们叫做实体,存在于堆内存当中。


3、类和对象的图例:
可以理解成:类是图纸;汽车就是堆内存中的对象。

4、示例:

/*
 *需求:描述汽车(颜色和轮胎数)。描述事物,其实就是在描述事物的属性和行为。
 *
 * 属性对应类中的变量,行为对应类中的函数(方法)。
 * 定义类,其实就是在描述事物,就是在定义属性和行为。 属性和行为共同称为类中的成员。(成员变量和成员方法)
 */
<span style="font-family:Microsoft YaHei;font-size:12px;">class Car{
    //描述颜色
    String color="red";
    //描述轮胎数
    int num=4;
    void run(){
         System. out.println(color +"..." +num );
    }   
}
public class CarDemo{
    public static void main(String[] args) {
          //生产汽车在java中通过new操作符来完成。
          //其实就是在堆内存中产生一个实体
         Car c= new Car();//c就是一个类类型变量。记住:类类型变量指向对象。类类型变量指向该类产生的实体。
         c. color= "blue";
         c.run(); //blue 4
         Car c1= new Car();
         c1.run(); //red 4
    }
}</span>

5、原理图:

三、成员变量、局部变量

1、成员变量和局部变量有什么不同?

1)作用范围
成员变量:作用于整个类中。
局部变量:作用于函数或者语句中。
2)在内存中的位置:
成员变量:在堆内存中,因为对象的存在才在内存中存在。
局部变量:在栈内存中,

四、匿名对象

    匿名对象调用方法有意义,但是调用属性没有意义。凡是简化的都有局限性。

1、匿名对象是对象的简化形式   如:new Car()

2、匿名对象的两种使用方式:
1)当对对象的方法只调用一次时,可用匿名对象来完成,这样写比较简化。当对一个对象进行多个成员调用,必须给这个对象起个名字。
2)可以将匿名对象作为实参进行传递。




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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值