DAY3

本文详细介绍了Java面向对象编程中的类与对象概念,包括类的定义、属性和行为、对象的定义,以及类与对象的关系。此外,还涵盖了成员变量、成员方法、构造方法、封装、继承、super和this等关键概念及其使用规则。
摘要由CSDN通过智能技术生成

面向对象

类与对象

类的定义:是一组相关属性和行为的集合。可以看成是一类事物的模板 ,使用事物的属性特征和行为特征来描述该类事物。

属性 :就是该事物的状态信息。

行为 :就是该事物能够做什么。

格式:

public class ClassName {

//成员变量

//成员方法

}

注:成员变量:和以前定义变量几乎是一样的。只不过位置发生了改变。在类中 ,方法外

成员方法:和以前定义方法几乎是一样的。只不过static去掉


对象的定义:是一类事物的具体体现。对象是类的一个实例(对象并不是找个女朋友 必然具备该类事物的属性 和行为。


类与对象之间的关系

类是对一类事物的描述 ,是抽象的。

对象是一类事物的实例 ,是具体的。

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


对象

创建对象格式:类名 对象名 = new 类名();

使用对象访问类中的成员:

对象名 .成员变量;

对象名 .成员方法()


成员变量的默认值

数据类型默认值
基本类型整数(byte short int long0
浮点数(oat double0.0
字符(char'\u0000'
布尔(booleanfalse
引用类型数组 ,类 ,接口null

成员变量和局部变量区别

在类中的位置不同

成员变量:类中 ,方法外

局部变量:方法中或者方法声明上(形式参数)

作用范围不一样

成员变量:类中

局部变量:方法中

初始化值的不同

成员变量:有默认值

局部变量:没有默认值。必须先定义 ,赋值 ,最后使用

在内存中的位置不同

成员变量:堆内存

局部变量:栈内存

生命周期不同

成员变量:随着对象的创建而存在 ,随着对象的消失而消失

局部变量:随着方法的调用而存在 ,随着方法的调用完毕而消失

封装

步骤

使用private关键字来修饰成员变量

对需要访问的成员变量提供对应的一对getxxx方法,setxxx方法

private

含义

1. private是一个权限修饰符 ,代表最小权限。

2. 可以修饰成员变量和成员方法。

3. private修饰后的成员变量和成员方法 ,只在本类中才能访问。

使用格式:private 数据类型 变量名

this

含义

this代表所在类的当前对象的引用(地址值 即对象自己的引用。

注:方法被哪个对象调用 ,方法中的this就代表那个对象。即谁在调用 this就代表谁。

使用格式:this.成员变量名;

构造方法

定义格式:

修饰符 构造方法名(参数列表){

// 方法体

}

注:

1. 如果你不提供构造方法 ,系统会给出无参数构造方法。

2. 如果你提供了构造方法 ,系统将不再提供无参数构造方法。

3. 构造方法是可以重载的 ,既可以定义参数 ,也可以不定义参数。

JAVABEAN

JAVABEAN是JAVA语言编写类的一种标准规范。符合JAVABEAN的类,要求类必须是具体的和公共的 ,并且具有无参数的构造方法 ,提供用来操作成员变量的set和get方法。

格式:

public class ClassName{

//成员变量

//构造方法

//无参构造方法【必须】

//有参构造方法【建议】

//成员方法

//getXxx()

//setXxx()

}

继承、 superthis、抽象类

继承

其中 ,多个类可以称为子类 ,单独那一个类称为父类、超类(superclass)或者基类。

定义

继承 :就是子类继承父类的属性和行为 ,使得子类对象具有与父类相同的属性、相同的行为。子类可以直接 访问父类中的非私有的属性和行为。

好处

1. 提高代码的复用性。

2. 类与类之间产生了关系 ,是多态的前提。

格式:

class 父类  {

...

}

class 子类  extends 父类  {

...

}

成员变量

如果子类父类中出现不重名的成员变量 ,这时的访问是没有影响的

如果子类父类中出现重名的成员变量 ,这时的访问是有影响的

子父类中出现了同名的成员变量时 ,在子类中需要访问父类中非私有成员变量时 ,需要使用super关键字,修饰父类成员变量。

使用格式:super.父类成员变量名

成员变量和局部变量的区别

在类中的位置不同

成员变量:类中 ,方法外

局部变量:方法中或者方法声明上(形式参数)

作用范围不一样

成员变量:类中

局部变量:方法中

初始化值的不同

成员变量:有默认值

局部变量:没有默认值。必须先定义 ,赋值 ,最后使用

在内存中的位置不同

成员变量:堆内存

局部变量:栈内存

生命周期不同

成员变量:随着对象的创建而存在 ,随着对象的消失而消失

局部变量:随着方法的调用而存在 ,随着方法的调用完毕而消失

封装

原则

将属性隐藏起来 ,若需要访问某个属性 ,提供公共方法对其访问。

步骤

1.使用private关键字修饰成员变量。

2.对需要访问的成员变量,提供对应的一对getxxx方法,setxxx方法。

private

含义

1. private是一个权限修饰符 ,代表最小权限。

2. 可以修饰成员变量和成员方法。

3. 被private修饰后的成员变量和成员方法 ,只在本类中才能访问。

格式

private 数据类型 变量名

this

含义

this代表所在类的当前对象的引用(地址值 即对象自己的引用。

住 :方法被哪个对象调用 ,方法中的this就代表那个对象。即谁在调用 ,this就代表谁。

格式

this.成员变量名;

构造方法

定义格式

修饰符 构造方法名(参数列表){

// 方法体

}

1. 如果你不提供构造方法 ,系统会给出无参数构造方法。

2. 如果你提供了构造方法 ,系统将不再提供无参数构造方法。

3. 构造方法是可以重载的 ,既可以定义参数 ,也可以不定义参数。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值