Day06-类的介绍-封装性-JavaBean

面向过程:当需求实现一个功能的时候,每一个具体步骤都要亲历亲为,详细的处理每一个细节。
面向对象:当需求实现一个功能的时候,不关心具体步骤,而是找一个已经具有该功能的人,来帮我做事。
面向对象三大基本特征:封装性,继承性,多态性

1.什么是类:

类是一组相关属性和行为的集合。可以看成是一类事物的模板,使用事物的属性特征和行为特征来描述该类事物。
属性:就是该事物的状态信息。
行为:就是该事物能够做什么。

2.什么是对象:

对象是一类事物的具体体现。对象是类的一个实例,必然具备该类事物的属性和行为。

3.类与对象的关系:

a. 类是对一类事物的描述,是抽象的
b.对象是一类事物的实例,是具体的。
c.类是对象的模板,对象是类的实体。

4.类的格式

public class ClassName{
//成员变量
//成员方法
}
注意事项:
1.成员变量是直接定义在类当中,在方法外边
2.成员方法不要写static关键字

5.类的使用

【通常】情况下,一个类不能直接使用,需要根据类创建一个对象,才能使用。
如何创建对象,步骤:
1.导包:import 包名称.类名称
(对于和当前类属于同一个包的情况,可以省略导包语句不写)
2.创建:类名称 对象名 = new 类名称();
3.使用:两种情况:
使用成员变量:对象名.成员变量名
使用成员方法:对象名.成员方法名(参数);
注意事项:
1.如果成员变量没有赋值,那么将会有个默认值,规则和数组一样:
整数–0、浮点型–0.0、char–\u0000、布尔类型–false、引用类型–null
2.使用对象类型作为方法的参数,也叫一个引用,引用类型作为参数,传递的是地址值。当一个对象作为参数,传递到方法当中,实际上传递进去的就是对象的地址值!
3.使用对象类型作为方法的返回值,也叫一个引用,当使用一个对象类型作为方法的返回值时,返回值其实就是对象的地址值。

局部变量和成员变量的对比【重点】

1.定义的为止不一样:

局部变量:在方法的内部
成员变量:在方法的外部,类的内部

2.作用范围不一样:

局部变量:只有方法当中才能使用,出了方法就不能再使用。
成员变量:整个类都可以通用。

3.默认值不一样:

局部变量:没有默认值,若要使用,必须手动进行赋值。
成员变量:如果没有赋值,就会有默认值,规则:整数–0、浮点–0.0、char–“\u0000”、布尔–false、引用–null

4.内存位置不一样:

局部变量:位于栈内存
成员变量:位于堆内存

5.生命周期不一样:

局部变量:随着方法进栈(也叫压栈)而诞生,随着方法出栈而消失
成员变量:随着对象创建而诞生,随着对象被垃圾回收而消失

面向对象三大特征之一:封装性

面向对象三大特征:封装、继承、多态

1.封装性在Java当中的体现:

a.方法就是一种封装
b.关键字private也是一种封装

封装就是将一些细节信息隐藏起来,对于外界不可见
将属性隐藏起来,如要访问某个属性,提供公共方法对其访问。

2.封装的步骤

1.使用private关键字修饰成员变量
2.对需要访问的成员变量,提供一对getXxx方法、setXxx方法。

3.private关键字

1.private是一个权限修饰符,代表最小权限
2.可以修饰成员变量和成员方法。
3.被private修饰后的成员变量和成员方法,只在本类当中才能访问。
格式:private 数据类型 变量名;
4.如何访问被private修饰的成员变量:
使用private修饰变量后,若要访问,那么一定要定义一对儿Getter和Setter方法
注意:setXxx方法必须有参数,无返回值,并且参数类型必须与需要set的成员变量类型一致。
getXxx方法必须有返回值,无参数,并且返回值类型必须与成员变量类型一致。
对于基本类型当中的boolean值,Getter方法一定要写成isXxx的形式,而setXxx规则不变

package demo;
public class IsBoolean {    

    private boolean abc;
    
    public boolean isAbc() {
        return abc;
    }
    
    public void setAbc(boolean abc) {
        this.abc = abc;
    }
}

4.封装优化1–this关键字

当方法的局部变量和类的成员变量重名的时候,根据就近原则,会优先使用局部变量。
如果需要访问本类当中的成员变量,需要使用格式:
this.成员变量名
“通过谁调用的方法,谁就是this”

5.封装优化2–构造方法

构造方法是专门用来创建对象的方法,当我们通过关键字new来创建对象时,其实就是在调用构造方法。
格式:

   public 类名称(参数类型 参数名称) {
        方法体
    }

注意事项:
1.构造方法的名称必须和所在类名称完全一样,就连大小写也要一样
2.构造方法不要写返回值类型,连void也不写
3.构造方法不能return一个具体的返回值
4.如果没有编写任何构造方法,那么编译器会默认送一个构造方法,没有参数,方法体什么事情都不会做。
5.一旦编写了至少一个构造方法,那么编译器就不会再送。
6.构造方法也是可以重载的。
重载:方法名相同,参数列表不同。

标准代码----JavaBean

一个标准的类通常有下面四个组成部分:
1.所有的成员变量要使用private关键字修饰
2.为每一个成员变量编写一对儿Getter/Setter方法
3.编写一个无参构造方法
4.编写一个全参构造方法
标准的类也叫Java Bean

小结:

1.一个类与它对象之间关系是什么?

类是对象的模板,对象是类的实体

2.如何定义一个类,由哪些部分组成,各部分的作用是什么?

三部分:
成员变量:描述事物的状态信息
构造方法:创建事物对象
成员方法:描述事物能做什么

3.如何创建一个对象,如何使用该对象?

创建对象的格式:
类名称 对象名称 = new 类名称();
对象使用方式:
对象名称.成员变量
对象名称.成员方法

4.局部变量和成员变量的区别:

1.在类中的位置不同
局部变量:方法中,或方法声明上(形式参数)
成员变量,方法外,类中
2.作用范围不一样:
成员变量:类中
局部变量:方法中
3.初始化的值不同
成员变量:有默认值,规则和数组一样
局部变量:没有默认值,必须赋值才能使用
4.在内存中位置不同:
成员变量:堆内存
局部变量:栈内存
5.生命周期不同
成员变量:随着对象的创建而存在,随着对象消失而消失
局部变量:随着方法调用而存在,随着方法调用完成而消失

5.构造方法和成员方法的区别:

1.作用不同:
构造方法:创建对象
成员方法:执行某具体功能
2.命名不同:
构造方法:与类名一致
成员方法:自定义
3.返回值类型不同:
构造方法:无返回值,也无返回值类型
成员方法:void或者确定的数据类型
4.调用不同:
构造方法:通过new关键字调用
成员方法:通过对象名.成员方法调用

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ATZYDEVIL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值