【JAVA】我们常常谈到的方法是指什么?

news2024/12/23 9:42:40

在这里插入图片描述


个人主页:【😊个人主页】
系列专栏:【❤️初识JAVA】


文章目录

  • 前言
  • 方法
  • 方法的分类
  • 方法的定义
  • 方法调用
  • 方法重载


前言

在之前的文章中我们总是会介绍到类中的各式各样的方法,也许在应用中我们对它已经有了初步的了解,今天我们就来详细的介绍一下“方法”

方法

在中文中方法常常指的是获得某种东西或达到某种目的而采取的手段与行为方式,在Java编程世界中方法是一段被封装起来,具有特定功能的代码块,可以被多次调用,实现代码复用和模块化编程。Java方法通常包括方法名、参数列表、返回值、访问修饰符、异常列表和方法体等组成部分。

  • 方法是解决一类问题的步骤的有序组合
  • 方法包含于类或对象中
  • 方法在程序中被创建,在其他地方被引用

方法的分类

  1. 普通方法:最基本的Java方法,执行一系列语句并可能返回一个值。
  2. 构造方法:用于创建对象实例,与类名相同,并且没有返回值。
  3. 静态方法:与类相关联而非实例,可以通过类名直接调用,不需要创建类实例。
  4. 实例方法:与实例相关联,必须通过实例来调用。
  5. 方法重载:一种特殊的方法,具有相同的名称但不同的参数列表,用于处理不同情况下的相似操作。
  6. 方法覆盖:子类重新定义父类中已有的方法,实现子类自己的逻辑。
  7. 可变参数方法:允许在方法中传递多个相同类型的参数,而无需指定参数数量。
  8. 接口方法:接口中的方法没有方法体,需要实现该接口的类来提供具体实现。
  9. Lambda表达式:简洁的语法结构,可以用于替代一些接口方法的实现。

方法的定义

在这里插入图片描述

修饰符:修饰符,这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。
返回值类型 :方法可能会返回值。returnValueType 是方法返回值的数据类型。有些方法执行所需的操作,但没有返回值。在这种情况下,returnValueType 是关键字void。
方法名:是方法的实际名称。方法名和参数表共同构成方法签名。
参数类型:参数像是一个占位符。当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。
方法体:方法体包含具体的语句,定义该方法的功能。

public static boolean isEven(int n) {
    if (n % 2 == 0) {
        return true;
    } else {
        return false;
    }
}//判断一个数是否为偶数

方法调用

使用方法名称和传递的参数调用方法。例如,如果需要调用名为“myMethod”的方法,并传递两个整数参数

myObject.myMethod(10, 20);

这将在名为“myObject”的对象上调用名为“myMethod”的方法,并传递两个整数参数。

方法重载

方法重载是指在同一个类中定义多个方法,它们具有相同的方法名,但输入参数的类型、顺序或数量不同。Java编译器会根据方法的参数类型、顺序、数量等信息来判断调用哪个方法。方法重载可以提高代码的可读性和可维护性。

public class OverloadExample {
    public void print(int i) {
        System.out.println("Printing integer: " + i);
    }
    
    public void print(double d) {
        System.out.println("Printing double: " + d);
    }
    
    public void print(String s) {
        System.out.println("Printing string: " + s);
    }
    
    public static void main(String[] args) {
        OverloadExample overload = new OverloadExample();
        overload.print(5);
        overload.print(3.14159);
        overload.print("Hello, world!");
    }
}

在这个例子中,OverloadExample类中定义了三个重载的print方法。第一个方法接受一个int型参数,第二个方法接受一个double型参数,第三个方法接受一个String型参数。在main方法中,我们创建了一个OverloadExample对象,然后调用了三个不同版本的print方法,分别传递一个整数、一个浮点数和一个字符串。由于这三个方法有不同的参数类型,编译器能够确定调用哪个方法,并正确输出相应的结果。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/877348.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

(三) 搞定SOME/IP通信之CommonAPI库

本章主要介绍在SOME/IP通信过程中的另外一个IPC通信利剑,CommonAPI库,文章将从如下几个角度让读者了解什么是CommonAPI, 以及库在实际工作中的作用 SOME/IP通信之CommonAPI CommonAPI库是什么CommonAPI库的编译写个Demo实战一下CommonAPI库是什么 CommonAPI是GENIVI组织开发…

linux系统服务学习(二)linux下yum源配置实战

文章目录 Linux下yum源配置实战一、Linux下软件包的管理1、软件安装方式2、源码安装的配置过程3、详解源码安装的配置过程(定制)4、详解编译过程5、安装过程6、axel多线程下载软件源码安装7、使用软链接解决command not found8、使用环境变量解决command…

JavaScript进阶 第一天

作用域函数进阶解构赋值 一.作用域 局部作用域全局作用域作用域链JS垃圾回收机制闭包变量提升 1.1 作用域 ① 概念:规定了变量能够被访问的“范围”,离开了这个"范围",变量不能被访问 ② 分类 局部作用域 (1&…

END-TO-END、SCALE HYPERPRIOR、Checkerboard梳理总结

8.9-8.15学习汇报 阅读《END-TO-END OPTIMIZED IMAGE COMPRESSION》、《VARIATIONAL IMAGE COMPRESSION WITH A SCALE HYPERPRIOR》、《Checkerboard Context Model for Efficient Learned Image Compression》 传统的图像或视频压缩方法通常分为多个步骤,包括变换…

android设置竖屏仍然跟随屏幕旋转怎么办

如题所问,我最近遇到一个bug,就是设置了摇感,然后有用户反馈说设置了手机下拉的系统设置-屏幕旋转-关闭。然后屏幕还是会旋转的问题。 首先,我们先从如何设置横竖屏了解下好了 设置横屏和竖屏的方法: 方法一&#x…

IPv6项目开发测试记录

一、环境 1、网口 IPv6地址 fd00:0:0:1::15 子网前缀长度 64 网关地址(非必须) fd00:0:0:1::1 二、云环境、面板机连云测试 1、面板机设置IPv4地址后可以访问fd00::100这个地址 2、初始化时候服务器地址输入匹配正则式:IPv6地址匹配正则…

基因型比值比(genotypic odds ratio)和等位基因比值比(allelic odds ratio)的计算

基因型比值比(genotypic odds ratio)和等位基因比值比(allelic odds ratio)是两个不同的概念。一般而言,通过PLINK、GCTA等工具计算得到的比值比指的是等位基因比值比。 以下是基因型比值比和等位基因比值比的各自计算…

8月12日上课内容 综合配置详解 四层+七层代理

后续内容概述: Ivs集群: keepalive:vip实现代理高可用 NAT VPN DR (DR最常用) 数据库:增制改查 备份 高可用 主从复制 读写分离 DBA 市场量小,从业者不多,工资一般般。 中间件: redis.* 分布式存储: ELK日志分析。kafka消息队列 监控zabb…

知识分享:如何将一张图片转换成短链接?

今天我们要分享的知识是:如何将一张图片转换成链接? 之前我们有介绍过在二维彩虹将图片转换成二维码的方法,那么其实将图片转成链接也非常简单!在做电商运营创建商品详情页面、作家为在线小说设置封面图、产品运营、策划活动等等…

IDC报告深度解读:2023年CRM发展趋势分析

近期,国际数据公司(IDC)发布了2022年下半年《中国客户关系管理(CRM)SaaS市场跟踪研究报告》,根据报告显示,2022年下半年中国CRM SaaS市场规模达到 11.6 亿美金,同比增长25.4%,CRM占中国整体SaaS…

SpringCloud初识

微服务架构4个核心问题: 这四个问题围绕这我们去学的一些东西,是重点!!! 1.服务很多,客户端该如何访问? 2.这么多服务,服务之间该如何通信? 3.这么多服务,该如何治理? 4.服务挂了…

Python 基础语法 | 常量表达式,变量,注释,输入输出

常量和表达式 我们可以把 Python 当成一个计算器,来进行一些算术运算 print(1 2 - 3) # 0 print(1 2 * 3) # 7 print(1 2 / 3) # 1.6666666666666665注意: print 是一个 Python 内置的 函数可以使用 - * / () 等运算符进行算术运算,先…

postman接口测试工具的常规使用

postman接口测试工具简介与安装 Postman简介: Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。 它提供功能强大的Web API&HTTP请求调试。它能够发送任何类型的HTTP请求(GET,HEAD,POST,PUT..&a…

04-基础入门-WEB源码拓展

基础入门-WEB源码拓展 1、WEB源码拓展(1)关于web源码目录结构(2)关于 WEB 源码脚本类型(3)关于 WEB 源码应用分类 2、演示案例(1)asp、php等源码测试(2)平台识…

我们常说这个pycharm里有陷阱,第三方库导入失败,看这里!

最近有小伙伴遇到了明明安装了 python 第三方库,但是在 pycharm 当中却导入不成功的问题。 ​ 一直以来,也有不少初学 python 的小伙伴,一不小心就跳进了虚拟环境和系统环境的【陷阱】中。 本文就基于此问题,来说说在 pycharm 当…

【leetcode】【图解】617. 合并二叉树

题目 难度:简单 给你两棵二叉树: root1 和 root2 。 想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些节点将会重叠(而另一些不会)。你需要将这两棵树合并成一棵新二叉树。合并的规则是&#xf…

基于DBN的伪测量配电网状态估计,DBN的详细原理

目录 背影 DBN神经网络的原理 DBN神经网络的定义 受限玻尔兹曼机(RBM) DBN的伪测量配电网状态估计 基本结构 主要参数 数据 MATALB代码 结果图 展望 背影 DBN是一种深度学习神经网络,拥有提取特征,非监督学习的能力,是一种非常好的分类算法,本文将DBN算法伪测量配电网…

leetcode 1171.从链表中删去总和值为零的连续节点

⭐️ 题目描述 🌟 leetcode链接:从链表中删去总和值为零的连续节点 思路: 在链表的 head 前新增加一个哨兵卫的头结点,方便计算前缀和。遍历链表,依次把每个节点的 val 相加到 sum 中去,再判断 sum 0 依…

网络编程(8.14)TCP并发服务器模型

作业: 1. 多线程中的newfd,能否修改成全局,不行,为什么? 2. 多线程中分支线程的newfd能否不另存,直接用指针间接访问主线程中的newfd,不行,为什么? 多线程并发服务器模型原代码&…

认识Transformer:入门知识

视频链接: https://www.youtube.com/watch?vugWDIIOHtPA&listPLJV_el3uVTsOK_ZK5L0Iv_EQoL1JefRL4&index60 文章目录 Self-Attention layerMulti-head self-attentionPositional encodingSeq2Seq with AttentionTransformerUniversal Transformer Seq2Seq …