java基础知识-方法
1.方法
定义:一段定义在类中的业务逻辑的代码.
目的:封装右业务关系的代码,实现代码的复用,即简化代码书写.
2.方法定义的格式
修饰符,返回值类型 方法名(数据类型1,形参名1,数据类型2,形参2...){
方法体;
return[返回值]
}
修饰符:目前固定写法:public static
返回值类型:如果没有返回值:void
如果有返回值,就是具体的数据类型(包括基本数据类型和引用数据类型)
方法名:根据命名规范,最好做到见名知意.
形参列表:形参的数据类型和形参名组成一个形参定义,多个形参之间用逗号分隔.
方法体:就是方法被调用时候执行的语句
return;表示方法体结束,如果返回值为void,后边一定不能加任何值.此时,return语句可以省略
如果有具体的返回值,后面一定要跟一个值(数据类型一致的常量,变量,表达式).
方法定义的位置:
目前位置:类中,main方法之外
方法不能嵌套定义.但是方法之间可以互相调用.
3.方法的调用
<1>.有明确返回值方法的调用
>>>给相应类型的变量赋值
int res = add(1,2);
System.out.println(add(1,2));
>>>单独调用
add(1,2);
<2>返回值为void方法的调用
>>>只能单独调用
print ();
- public static void main(String[] args){
- int res = add(1,2);
- System.out.println(res);
- }
- //
- public static int add(int a,int b){
- return a + b;
- }
有参数的方法被调用时,相当于给形参赋值.
方法的返回值返回给调用者
方法之间可以互相调用:
public static void main(String[] args){
introduce("Zhangsan");
}
//
public static void sayHi(){
System.out.println("Hello");
//
public static void introduce(String name){//name = "Zhangsan";
sayHi();//调用自定义方法
System.out.println("My name is : " + name);
}
4.方法的重载
eg1:
- /*
- 演示方法的重载
- 在一个类中,多个方法名相同,但是形参列表不同(个数或者类型)的方法,称为方法的重载(overload)
- 方法的重载和返回值无关.
- 两同一不同:
- 同类,同名
- 不同形参列表
- */
- public class OverloadDemo{
- public static void main(String[] args){
- int a = 1;
- int b = 2;
- double d = 1.5;
- // int res1 = add(a,b);
- // System.out.println(res1);
- double res2 = add(a,b);
- System.out.println(res2);
- }
- /*
- public static int add(int a,int b){
- return a + b;
- }
- */
- public static double add(double a,int b){
- return 0;
- }
- public static int add2(int a,int b,int c){
- return a + b + c;
- }
- public static double add1(double d1,double d2){
- return d1 + d2;
- }
- }
eg2:
- /*
- 重载演示
- */
- public class OverloadDemo2{
- public static void main(String[] args){
- test(1);
- int a = 1;
- test(a);
- short s = 1;
- test(s);
- }
- public static void test(short s){
- System.out.println("short类型形参的方法被调用");
- }
- public static void test(int s){
- System.out.println("int类型形参的方法被调用");
- }
- }
eg3
- /*
- 方法重载2
- */
- public class OverloadDemo3{
- public static void main(String[] args){
- int r1 = add(1,1);
- System.out.println(r1);
- double r2 = add(1.0,2.0);
- System.out.println(r2);
- }
- public static int add(int a,int b){
- return a + b;
- }
- public static double add(double d1,double d2){
- return d1 + d2;
- }
- }
java基础知识-方法的更多相关文章
- java基础知识回顾之---java String final类普通方法
辞职了,最近一段时间在找工作,把在大二的时候学习java基础知识回顾下,拿出来跟大家分享,如果有问题,欢迎大家的指正. /* * 按照面向对象的思想对字符串进行功能分类. * ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- java基础知识小总结【转】
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
- Java基础知识系列——String
最近晚上没有什么事(主要是不加班有单身),就复习了一下Java的基础知识.我复习Java基础知识主要是依据Java API和The Java™ Tutorials. 今天是第一篇,复习了一下Strin ...
- 学习android学习必备的java基础知识--四大内部类
学习android必备的java基础知识--四大内部类 今天学习android课程,因为我的主专业是JAVA,但是兴趣班却有这其他专业的同学,学习android 需要具备一些java的基础知识,因此就 ...
- JAVA基础知识之网络编程——-网络基础(Java的http get和post请求,多线程下载)
本文主要介绍java.net下为网络编程提供的一些基础包,InetAddress代表一个IP协议对象,可以用来获取IP地址,Host name之类的信息.URL和URLConnect可以用来访问web ...
- Java 基础知识(一)
Java基础知识篇: 一.关键字解释 1. final:修饰非抽象类,非抽象方法和属性, 以及修饰方法参数,代表“无法改变的”.出于对设计或者效率的考虑使用该关键字. final类无法被继承,fina ...
- java 基础知识三 java变量
java 基础知识 三 变量 1.作用域 {} 包围起来的代码 称之为代码块,在块中声明的变量只能在块中使用 2.常量 就是固定不变的量,一旦被定义,它的值就不能再被改变. 3.变量 变量必须在程序 ...
- java 基础知识二 基本类型与运算符
java 基础知识二 基本类型与运算符 1.标识符 定义:为类.方法.变量起的名称 由大小写字母.数字.下划线(_)和美元符号($)组成,同时不能以数字开头 2.关键字 java语言保留特殊含义或者 ...
随机推荐
- Spring------生命周期
Spring------生命周期 转:https://blog.csdn.net/qq_42112846/article/details/81368862 如图所示: 一下就是对上图的解释: Spri ...
- 关于页面缩放时css错乱的处理方法---之一
这几天遇到一个问题,就是在做网页的时候,页面缩放时,布局就乱了,原来的样子不会跟随缩放的放大或者缩小进行改变,直接导致的后果,就是页面很难看,无法使用 之前虽然写了代码,但是一直没有注意到缩放后页面的 ...
- ligbox 插件介绍
浏览器支持情况:一般情况都支持.最好是jQuery v1.x + lightbox.js,这样的组合IE6,IE7,IE8也支持! 1 light插件的下载地址:https://pan.baidu.c ...
- 并发系列3:Lock锁以及核心类AQS
Java Lock类提供了语言级别的Synchronized,Lock与Condition配合与Synchronized配合object一样实现了等待/通知机制.但它提供了更高的灵活性,有:1尝试非阻 ...
- opencv setTo()
转载至 作者:跬步达千里 opencv的setTo函数是将图像设置为某个值; 例如: 1.有一个Mat src,想将他的值全部设置成0,则可以src.setTo(0) 2.setTo还有更为高级的用法 ...
- day43 多表查询和pymysql
复习 增删改查全语法 # 增 insert into db1.t1(字段2, 字段1, ..., 字段n)|省略 values (值2, 值1, ..., 值n)|(值1, 值2, ..., 值n)[ ...
- TZOJ 4602 高桥和低桥(二分或树状数组+二分)
描述 有个脑筋急转弯是这样的:有距离很近的一高一低两座桥,两次洪水之后高桥被淹了两次,低桥却只被淹了一次,为什么?答案是:因为低桥太低了,第一次洪水退去之后水位依然在低桥之上,所以不算“淹了两次”.举 ...
- FortiGate防火墙500D下PC至外网丢包
1.现状: 如图,防火墙堆叠,500D共4个出口方向,联通.电信.FQ.运维专线 2.现象: 到网关和防火墙上.下联口不丢包,到网联通和运维专线方向丢包4%左右,电信和FQ方向不丢包 3.分析 采用从 ...
- [leetcode]46. Permutations全排列(给定序列无重复元素)
Given a collection of distinct integers, return all possible permutations. Input: [1,2,3] Output: [ ...
- Spring InitializingBean 接口以及Aware接口实现的原理
关于Spring InitializingBean 接口以及Aware接口实现的其实都在 第11步中: finishBeanFactoryInitialization() 方法中完成了3部分的内容: ...