开发工具与关键技术:Eclipse、java
作者:奈何丶一笑
撰写时间:2020年09月18日
24.方法
1.概述
方法是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集
注意:
- 方法必须先创建才能使用,该过程称为方法定义
- 方法创建后并不是直接运行的,需要手动使用后才执行,该过程称为方法调用
2.方法的定义和调用
方法定义
格式:
public static void 方法名(){
//方法体
}
例如:
public static void isEvenNumber(){
//方法体
}
方法调用
格式:方法名();
例如:isEvenNumber();
注意:方法必须先定义后调用,否则程序将报错。
3.带参数的方法定义和调用
-
带参数方法定义
/*带参数方法定义 格式: */ public static void 方法名(参数){ //方法体 } //格式(单个参数): public static void 方法名(数据类型 变量名){ //方法体 } //例如: public static void isEvenNumber(int number){ //方法体 } //格式(多个参数): public static void 方法名(数据类型 变量名1,数据类型 变量名2,......){ //方法体 } //例如: public static void getMax(int number1,int number2){ //方法体 }
注意:
- 方法定义时,参数的数据类型与变量名都不能缺少,缺少任意一个程序将报错
- 方法定义时,多个参数之间使用逗号(,)分隔
-
带参数方法调用
- 格式:方法名(参数);
- 格式(单个参数):方法名(变量名/常量值);例如:isEvenNumber(5);
- 格式(多个参数):方法名(变量名1/常量值1,变量值2/常量值2);例如:getMax(5,6)
- 注意:方法调用时,参数的数量与类型必须与方法定义中的设置相匹配,否则程序将报错
-
形参和实参
- 形参:方法定义中的参数,等同于变量定义格式,例如:int number
- 实参:方法调用中的参数,等同于使用变量或常量,例如:10 number
4.带返回值得方法定义和调用
-
带返回值方法定义
/*带返回值方法定义 格式: */ public static 数据类型 方法名(参数){ return 数据 } //例如: public static boolean isEvenNumber(int number){ return true; } //例如: public static int getMax(int a,int b){ return 100; }
注意:方法定义时return后面的返回值与方法定义上的数据类型要匹配,否则程序将报错。
-
带返回值方法调用
格式1:方法名(参数);例如:isEvenNumber(5);
格式2:数据类型 变量名=方法名(参数);例如:boolean flag=isEvenNumber(5);
注意 :方法的返回值通常会使用变量接收,否则该返回值将无意义
5.方法的注意事项
- 方法不能嵌套定义
- void表示无返回值,可以省略return,也可以单独的书写return,后面不加数据。
6.方法的通用格式
-
格式:
public static 返回值类型 方法名(参数){ 方法体; return 数据; }
-
public static:修饰符,目前先记住这个格式
-
返回值类型:方法操作完毕之后返回的数据的数据类型
如果方法操作完毕,没有数据返回,这里谢void,而且方法体中一般不写return
-
方法名:调用方法时使用的标识
-
参数:由数据类型和变量名组成,多个参数之间用逗号隔开
-
方法体:完成功能的代码块
-
return:如果方法操作完毕,有数据返回,用于把数据返回给调用者
-
定义方法时,要做到两个明确
明确返回值类型:主要是明确方法操作完毕之后是否有数据返回,如果没有,写void;如果有,写对应的数据类型。
明确参数:主要明确参数的类型和数量
-
调用方法时:
void类型的方法,直接调用即可
非void类型的方法,推荐用变量接收调用
7.方法重载
- 概述:方法重载指同一个类中定义的多个方法之间的关系,满足下列条件的多个方法互相构成重载
- 多个方法在同一个类中
- 多个方法具有相同的方法名
- 多个方法的参数不同,类型不同或者数量不同
- 特点:
- 重载仅对应方法的定义,与方法的调用无关,调用方式参照标准格式
- 重载仅针对同一个类中方法的名称与参数进行识别,与返回值无关,换句话说不能通过返回值来判断两个方法是否相互构成重载
8.方法的参数传递
- 基本类型:对于基本数据类型的参数,形式参数的改变,不影响实际参数的值
- 引用类型:对于引用类型的参数,形式参数的改变,影响参数的值
25.面向对象基础
1.类型和对象
对象:万物皆对象,客观存在的事物皆对象。
类:类是对现实生活中一类具有共同属性和行为的事物的抽象。
- 类是对象的数据类型
- 类是具有相同属性和行为的一组对象的集合
对象属性:对象具有的各种特征,每个对象的每个属性都拥有特定的值。
对象行为:对象能执行的操作。
类和对象的关系:类是对象的抽象,对象是类的实体
- 类:类是对现实生活中一类具有共同属性和行为的事物的抽象
- 对象:是能够看得到摸得着的真实存在的实体
类的定义:
-
类的重要性:是Java程序的基本组成单位
-
类是什么:类是对现实生活中一类具有共同属性和行为的事物的抽象,确定对象将会拥有的属性和行为。
-
类的组成:属性和行为
- 属性:在类中通过成员变量来体现(类中方法外的变量)
- 行为:在类中通过成员方法来体现(和前面的方法相比去掉static关键字即可)
-
步骤
-
定义类: public class 类名{
-
编写类的成员变量://成员变量
变量1的数据类型 变量1;
变量2的数据类型 变量2;
…
-
编写类的成员方法://成员方法
方法1;
方法2;
…
}
-
对象的使用:
- 创建对象:格式 类型 对象名=new 类名(); 例如:Phone p=new Phone();
- 使用对象:
- 使用成员变量:格式:对象名.变量名,例如:p.brand
- 使用成员方法:格式对象名.方法名(),例如:p.call()
2.成员变量和局部变量
成员变量:类中方法外的变量
局部变量:方法中的变量
区别:
区别 | 成员变量 | 局部变量 |
---|---|---|
类中位置不同 | 类中方法外 | 方法内或方法声明上 |
内存位置不同 | 堆内存 | 栈内存 |
生命周期不同 | 随着对象的存在而存在 随着对象的消失而消失 | 随着方法的调用而存在 随着方法的调用完毕而消失 |
初始值不同 | 有默认的初始值 | 没有默认的初始值,必须先定义, 赋值才能使用 |
3.封装
-
private 关键字
- 是一个权限修饰符
- 可以修饰成员(成员变量和成员方法)
- 作用是保护成员不被别的类使用,被private修饰的成员只能在本类中才能访问
针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作
- 提供"get变量名()"方法,用于获取成员变量的值,方法用public修饰
- 提供"set变量名(参数)"方法,用于设置成员变量的值,方法用public修饰
-
this 关键字
- this修饰的变量用于指代成员变量
- 方法的形参如果与成员变量同名,不带this修饰的变量指的是形参,而不是成员变量
- 方法的形参没有与成员变量同名,不带this修饰的变量指的是成员变量
- 什么时候使用this:解决局部变量隐藏成员变量
- this:代表所在类的对象引用,方法被哪个对象调用,this就代表哪个对象
- this修饰的变量用于指代成员变量
-
封装
-
概述:是面向对象的三大特征之一(封装,继承,多态)
是面向对象编程语言对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外部是无法直接操作的
-
封装原则
将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问成员变量private,提供对应的getXxx()/setXxx()方法
-
封装的好处
通过方法来控制成员变量的操作,提高了代码的安全性,把代码用方法进行封装,提高了代码的复用性
-
4.构造方法
构造方法是一种特殊的方法
作用:创建对象
格式:public class 类名{
修饰符 类名(参数){
}
}
功能:主要完成对象数据的初始化
注意事项:
-
构造方法的创建
如果没有定义构造方法,系统将给出一个默认的无参数构造方法
如果定义了构造方法,系统将不再提供默认的构造方法
-
构造方法的重载
如果自定义了带参构造方法,还要使用无参数构造方法,就必须再写一个屋参数构造方法
-
推荐使用方式
无论是否使用,都手工书写无参数构造方法
标准类制作
-
成员变量
使用private修饰
-
构造方法
提供一个无参构造方法
提供一个带多个参数的构造方法
-
成员方法
提供每一个成员变量对应的setXxx()/getXxx()
提供一个显示对象信息的show()
-
创建对象并为其成员变量赋值的两种方式
无参构造方法创建对象后使用setXxx()赋值
使用带参数构造方法直接创建带有属性值得对象
26.API
概述:应用程序编程接口
JavaAPI:指的就是JDK中提供的各种功能的Java类
这些类将底层的实现封装了起来,我们不需要关心这些类如何实现的,只需要学习这些类如何使用即可,
我们可以通过帮助文档来学习这些API如何使用