《java》笔记<三>

面向对象

面向对象:

面向对象是相对面向过程而言

面向对象和面向过程都是一种思想

面向过程  【强调的是功能行为】

面向对象【将功能封装进对象,强调具备了功能的对象】

面向对象是基于面向过程的

 

面向对象:三个特征:

封装(encapsulation)
继承(inheritance)
多态(polymorphism)

以后开发:其实就是找对象使用,没有对象,就创造一个对象

找对象,建立对象。维护对象的关系

 

类和对象的关系:

比如:现实生活中的对象:张三  李四

想要描述:提取对象中共性内容。对具体的抽象

描述时:这些对象的共性有:姓名,年龄,性别,学习java功能

 

类就是:对现实生活中食物的描述

 

对象:就是这类事物,实实在在存在个体

 

映射到java中,描述就是class定义的类

具体对象就是对应java在堆内存中用new建立实体

 

描述事物其实在描述事物属性和行为

属性对应是类中变量,行为对应的是类中的函数(方法)

其实定义类,就是在定义属性和行为,属性和行为共同成为类中的成员(成员变量和成员方法)

 

成员变量和局部变量

成员变量:

1、 作用于整个类中

2、 成员变量随着对象的建立而建立, 随着对象的消失而消失, 存在于对象所在的堆内存中。

3、 成员变量有默认初始化值。

 

局部变量:

1、局部变量只定义在局部范围内,作用于函数中,或者语句中如: 函数内, 语句内等, 只在所属的区域有效。

2、 局部变量存在于栈内存中, 作用的范围结束, 变量空间会自动释放。

3、 局部变量没有默认初始化值。

 

在内存中存在的位置:

成员变量:在堆内存中,因为对象的存在,才在内存中存在

局部变量:存在栈内存中

 

 

匿名对象:

匿名对象是对象的简化形式

匿名对象两种使用情况

1.当对对象方法仅进行一次调用的时候  这样写比较简化 

   如果对一个对象进行多个成员调用,必须给这个对象起个名字【调用属性没有意义】

2.匿名对象可以作为实际参数进行传递

 

封装

封装(Encapsulation):

是指隐藏对象的属性和实现细节,仅对外提供公共访问的方式

好处:

将变化隔离   便于使用   提高重要性    提高安全性

封装原则:

将不需要对外提供的内容都隐藏起来

把属性都隐藏,提供公共方法对其访问

 

之所以对外提供访问方式,就因为可以在访问方式中加入逻辑判断等语句  if....else...

对访问的数据进行操作,提高代码的健壮性

 

**封装不是私有   私有仅仅是封装的一种表现形式

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值