Java基础(四)

开发工具与关键技术: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就代表哪个对象
  • 封装

    • 概述:是面向对象的三大特征之一(封装,继承,多态)

      是面向对象编程语言对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外部是无法直接操作的

    • 封装原则

      将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问成员变量private,提供对应的getXxx()/setXxx()方法

    • 封装的好处

      通过方法来控制成员变量的操作,提高了代码的安全性,把代码用方法进行封装,提高了代码的复用性

4.构造方法

构造方法是一种特殊的方法

作用:创建对象

格式:public class 类名{

​ 修饰符 类名(参数){

​ }

​ }

功能:主要完成对象数据的初始化

注意事项:

  • 构造方法的创建

    如果没有定义构造方法,系统将给出一个默认的无参数构造方法

    如果定义了构造方法,系统将不再提供默认的构造方法

  • 构造方法的重载

    如果自定义了带参构造方法,还要使用无参数构造方法,就必须再写一个屋参数构造方法

  • 推荐使用方式

    无论是否使用,都手工书写无参数构造方法

标准类制作

  • 成员变量

    使用private修饰

  • 构造方法

    提供一个无参构造方法

    提供一个带多个参数的构造方法

  • 成员方法

    提供每一个成员变量对应的setXxx()/getXxx()

    提供一个显示对象信息的show()

  • 创建对象并为其成员变量赋值的两种方式

    无参构造方法创建对象后使用setXxx()赋值

    使用带参数构造方法直接创建带有属性值得对象

26.API

概述:应用程序编程接口

JavaAPI:指的就是JDK中提供的各种功能的Java类

这些类将底层的实现封装了起来,我们不需要关心这些类如何实现的,只需要学习这些类如何使用即可,

我们可以通过帮助文档来学习这些API如何使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值