类与对象、封装、构造方法

Java学习笔记

8.类与对象、封装、构造方法

标题基本定义模板

public class  Phone{	//public类最多只能有一个
   	int money;	//手机的两种属性
    String color;
    public void call(String name){	//成员方法不要写static关键字
        System.out.printf("给" + name + "打电话");	//一种行为(功能)
    }

}

注意:public类最多只能有一个,public类的名称也必须完全与含有该编译单元的文件名完全一致。如果不一致,会导致将编译错误。
在这里插入图片描述
例如public class xxx对应的就是 xxx.java文件

一般public对应的类用来存放main方法,而新建的类不能与main方法在同一个类中,所以一般新建的类都是不带public,并且不在public类中,示例如下
在这里插入图片描述

通常情况下,一个类并不能直接使用,
需要根据类创建一个对象,才能使用。
标题分以下3步:

  1. 导包:也就是指出需要使用的类,在什么位置。
    import 包名称.类名称;
    对于和当前类属于同一个包的情况,可以省略导包语句不写。
  2. 创建,格式:类名称 对象名 = new 类名称();
    Student stu = new Student();
  3. 使用,分为两种情况:
    使用成员变量:对象名.成员变量名
    使用成员方法:对象名.成员方法名(参数)
    在这里插入图片描述

标题成员变量与局部变量的区别

1.定义的位置不同
成员变量:类中,方法外
局部变量:方法中或者方法声明上(形式参数)
2.作用范围不同
成员变量:类中
局部变量:方法中
3. 初始化值的不同
成员变量:有默认值
局部变量:没有默认值。必须先定义,赋值,最后使用
4.在内存中的位置不同
成员变量:堆内存
局部变量:栈内存
5.生命周期不同
成员变量:随着对象的创建而存在,随着对象的消失而消失
局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
在这里插入图片描述

封装:

将一些细节信息隐藏起来,对于外界不可见

封装性在Java当中的体现:
1. 方法就是一种封装
方法就是一种封装
2. 关键字private也是一种封装
在这里插入图片描述
在这里插入图片描述
用private关键字将需要保护的成员变量进行修饰。
一旦使用了private进行修饰,那么本类当中仍然可以随意访问。
但是,超出了本类范围之外就不能再直接访问了。

间接访问private成员变量,就是定义一对Getter/Setter方法
必须叫setXxx或者是getXxx命名规则。
对于Getter来说,不能有参数,返回值类型和成员变量对应;
对于Setter来说,不能有返回值,参数类型和成员变量对应。
注意:对于基本类型当中的boolean值,
Getter方法一定要写成isXxx的形式,而setXxx规则不变

在这里插入图片描述

this关键字

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

“通过调用的方法,就是this。”
在这里插入图片描述
在这里插入图片描述
this.name就是Person成员变量中的name
最后输出的就是王思聪,你好。我是王健林

构造方法

构造方法是专门用来创建对象的方法
当我们通过关键字new来创建对象时,其实就是在调用构造方法。
格式:
public 类名称(参数类型 参数名称) {
方法体
}

注意事项:

  1. 构造方法的名称必须和所在的类名称完全一样,
    就连大小写也要一样
  2. 构造方法不要写返回值类型,连void都不写
  3. 构造方法不能return一个具体的返回值
  4. 如果没有编写任何构造方法,那么编译器将会默认有一个构造方法,没有参数、方法体为空。public Student() {}
  5. 一旦编写了至少一个构造方法,那么编译器将无默认构造方法。
  6. 构造方法也是可以进行重载的。
    重载:方法名称相同,参数列表不同。
    在这里插入图片描述

标准的类(JavaBean)

一个标准的类通常要拥有下面四个组成部分:

  1. 所有的成员变量都要使用private关键字修饰
  2. 为每一个成员变量编写一对Getter/Setter方法
  3. 有无参数的构造方法
  4. public修饰的公共类

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值