示例图2:
代码1:
代码2:
格式2:
修饰符访问权限范围:
本章主要内容:
3、带参数方法的定义和调用
方法定义:
格式1:(带static的方法定义)
示例图:
代码:
错误示例1:参数类型不同
错误示例2:参数个数不同
格式2:方法中不带static
方法调用:
4、带返回值的参数方法定义和调用
方法定义格式:
示例:
代码:
5、嵌套定义和嵌套调用
错误写法:
正确的写法:
6、方法重载
什么是方法重载?
7、方法的参数传递
1、基本数据类型的传递
代码:
演示运行图:
2、引用数据类型的传递
引用数据类型的概念:
演示图:
代码:
一、前言
====
前面我们学习了数组的概念和使用,现在我们来学习Java中的方法,这个方法和c语言的
函数十分相似。
二、方法
====
1.方法的概述
2.方法的定义和调用
3.带参数方法的定义和调用
4.带返回值方法的定义和调用
5.方法的注意事项
6.方法重载
7方法的参数传递
1、方法的概述
=======
方法是具有一定功能的代码段,我们通过这个来解决问题,是一段代码的集合。
(相当于c语言中的函数)
2、方法的定义和调用
==========
方法的定义
格式1:
public static void 方法名{
//方法的内容
}
其中static说明这是静态方法。静态成员和静态方法只能访问静态成员和方法,若是要
访问非静态成员或方法,则需要通过创建对象来访问,形如 类名 标识符=new 类名();
而非静态的成员既可以访问静态成员和方法也可以访问非静态成员和方法。
(这是后期的内容,提前涉及一下)
示例图1:
示例图2:
代码1:
package com.haha;
public class test {
public static void main(String[] args) {
hello();//在同一类下,静态成员之间的访问直接通过 方法名();
}
public static void hello(){
System.out.println(“好好学习,天天编程”);
}
}
代码2:
package com.haha;
public class test1 {
public static void main(String[] args) {
test1 nb=new test1();//创建对象
nb.hello();//若静态方法想访问非静态方法,则得通过创建对象才能访问
}
public void hello(){//没有static表示非静态方法
System.out.println(“好好学习,天天编程”);
}
}
格式2:
public 返回类型 方法名(){
//方法定义的实现
}
public int haha(){
}
其实定义方法十分简单,形如c语言的函数即可,只不过在java多了一些修饰符public
、private、protected等之类的修饰符,这些修饰符作用是访问权限。
修饰符访问权限范围:
本章主要内容:
===========
1.带参数方法的定义和调用
2.带返回值的方法定义和调用
3、带参数方法的定义和调用
=================
方法定义:
格式1:(带static的方法定义)
public static void 方法名(参数){
//方法内容
}
示例:
public static void compare(int a,int b){
System.out.println(a>b?a:b);
}
**注意:一个程序要想运行则比须要有main方法,程序就是从main方法进入的。**所以比较完
整的写法是:
示例图:
代码:
package com.test;
public class 比较 {
public static void main(String[] args) {
compare(10,20);
}
public static void compare(int a,int b){
System.out.println(a>b?a:b);
}
}
注意**:**在定义方法时,调用中的参数要和方法中的参数一一对应,以及参数类型也要一一对
应,否则会报错。如上图中的compare(int,int)方法定义了两个int类型的方法,那么在其他方
法中(不一定是main方法)调用也要写两个int类型的参数。其实方法可以重载的,重载就是参
数个数或参数类型至少有一个不同…(下篇细讲)
错误示例1:参数类型不同
错误示例2:参数个数不同
格式2:方法中不带static
这个当main方法调用他时,则需要在main方法中先创建对象(以前讲过)
在同一类中,其他不带static方法可以直接调用其他方法(上篇讲过,不重复了)
方法调用:
格式是:方法名();
是不是超级简单,其中括号里的参数要和定义的参数一致。
如:compare(10,20);也可以通过Scanner数入参数
4、带返回值的参数方法定义和调用
================
仔细看是不是就只和上面那个多了返回值这三个字,实际上这定义的时候也是多这一个。
方法定义格式:
(也是分带不带static的,和上面一样,所以我就不分开讲了)
public static 返回类型 方法名(参数){
//方法体
return 数据
}
如:
public static int compare(int a,int b){
return a>b?a:b;
}
注:带返回值的方法必须要有return返回一个以上的数据,否则报错,而返回类型为
void的,可以有return,但是return后啥也不跟,直接return;即可。
示例:
代码:
package com.test;
public class 比较 {
public static void main(String[] args) {
int a=compare(10,20);
System.out.println(a);
}
public static int compare(int a,int b){
return a>b?a:b;
}
}
注:调用方法时,必须要有一个变量去接受返回类型(不接收也不会报错的),没有任何
变量去接****受返回的值是没有任何意义的
5、嵌套定义和嵌套调用
===========
方法不能嵌套定义,但是可以嵌套调用,
什么是嵌套定义,其实就是一个方法套了另一个方法
**什么是嵌套套用,**就是各个方法的来往调用,一个方法可以调用一个或多个,
如方法a调用方法b,方法b调用了方法c、d等等。
如
错误写法:
public static void main(String[] args){
public static void getmax(int a,int b){
}
}
此时就有问题了,main方法嵌套了getmax方法。
正确的写法:
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
总结
总体来说,如果你想转行从事程序员的工作,Java开发一定可以作为你的第一选择。但是不管你选择什么编程语言,提升自己的硬件实力才是拿高薪的唯一手段。
如果你以这份学习路线来学习,你会有一个比较系统化的知识网络,也不至于把知识学习得很零散。我个人是完全不建议刚开始就看《Java编程思想》、《Java核心技术》这些书籍,看完你肯定会放弃学习。建议可以看一些视频来学习,当自己能上手再买这些书看又是非常有收获的事了。
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
1713525910645)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
总结
总体来说,如果你想转行从事程序员的工作,Java开发一定可以作为你的第一选择。但是不管你选择什么编程语言,提升自己的硬件实力才是拿高薪的唯一手段。
如果你以这份学习路线来学习,你会有一个比较系统化的知识网络,也不至于把知识学习得很零散。我个人是完全不建议刚开始就看《Java编程思想》、《Java核心技术》这些书籍,看完你肯定会放弃学习。建议可以看一些视频来学习,当自己能上手再买这些书看又是非常有收获的事了。
[外链图片转存中…(img-3oEiqxW0-1713525910646)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!