java 方法详解_1-Java 类方法详解

本文介绍了Java中的static关键字及其作用,详细讲解了如何定义无参数、带参数的方法以及带返回值的方法。通过示例代码展示了如何使用static修饰变量和方法,以及如何在方法中处理输入数据,实现代码的模块化和复用。同时,阐述了使用方法的原因,如代码封装、模块化编程和减少冗余。

本章概要:

1、static 关键字

2、定义无参数的方法

3、定义带参数的方法

4、定义带返回值的方法

1、static 关键字

课程概要:

类方法

静态变量

一、类方法

1、由static 修饰的方法称为类方法或静态方法。

2、过程:.java文件--> javac.exe编译 --> .class 文件 --> java.exe解释器 -->内存的方法区,静态方法被创建

二、静态变量

1、由static修饰的变量称为静态变量,也称类变量。

2、静态变量定义的位置是在方法之外。

3、静态变量与静态方法都是类从磁盘加载至内存后被创建的,与类同时存在,同时消亡。

4、静态变量又称类的成员变量,在类中是全局变量,可以被类中的所有方法调用。

5、静态变量耳朵值由JVM自动初识话,以下是各类型变量初始化值列表:

变量类型

初始值

整型

0

浮点型

0.0

字符型

unicode码为0的字符,该字符不可见

布尔型

false

字符串型

null

【示例】

键盘输入一个人的姓名、性别、年龄、身高、性格、然后让该人向大家做自我介绍。

代码:

import java.util.Scanner;

public class Introduce{

static String name;

static char sex;

static short age;

static float height;

static String type;

public static void main(String[] arg){

Scanner scanner = new Scanner(System.in) ;

System.out.println("Name: ");

name=scanner.next(); //1

System.out.println("Sex: ");

sex=scanner.next().charAt(0); //2

System.out.println("Age: ");

age=scanner.nextShort();

System.out.println("Height: "); //3

height=scanner.nextFloat();

System.out.println("Type: ");

type=scanner.next();

System.out.print("Hello,my name is "+name+".");

System.out.print("I'm "+ age+" this year.");

System.out.println("And I'm"+height+" cm.");

System.out.println("I'm a "+type+sex+" boy.");

}

}

*****//1 scanner.next()

输入如果是ABCdef ,则读取所有字符串。如果输入是ab c def, 则只会读取ab。

*****//2 scanner.next().charAt(0)

读取输入字符串的第一个字符

*****//3 System.out.print()和System.out.println()

使用System.out.print()表示下面输出内容接着这行继续输出;

使用System.out.println()表示下面输出内容换行进行输出;

2、定义无参数的方法

课程概要:

什么是方法

定义无参数方法

为什么使用方法

一、什么是方法

方法代表一段代码,Java 的代码通常都封装在方法中。

例如main方法。main方法是Java规定的每个类的代码运行入口

二、定义无参方法 (注:方法名要小写)

static void 方法名(){

方法体-方法中的代码

}

【示例】

static void input(){

方法中的Java代码

}

三、为什么使用方法

1、Java的代码通常要在方法中编写,即代码封装在方法中。

2、模块化编程:将具有某种功能的代码块封装在一个方法中,不同的代码有不同的方法封装,利于程序的管理、维护。

3、将具有复用价值的代码封装在方法中,调用该代码时,只需调用方法名,这样能有效地减少程序的冗余。

【示例】

将上一节的【示例】中的输入数据的代码块封装在方法input()中,然后再main()中调用input方法,分别为两个人输入姓名、性别、年龄、身高、性格的信息。

import java.util.Scanner;

public class Introduce_Two{

static String name;

static char sex;

static short age;

static float height;

static String type;

static void input(){

Scanner scanner = new Scanner(System.in) ;

System.out.println("Name: ");

name=scanner.next();

System.out.println("Sex: ");

sex=scanner.next().charAt(0);

System.out.println("Age: ");

age=scanner.nextShort();

System.out.println("Height: ");

height=scanner.nextFloat();

System.out.println("Type: ");

type=scanner.next();

}

public static void main(String[] arg){

input();

System.out.print("Hello,my name is "+name+".");

System.out.print("I'm "+ age+" this year.");

System.out.println("And I'm"+height+" cm.");

System.out.println("I'm a "+type+sex+" boy.");

input();

System.out.print("Hello,my name is "+name+".");

System.out.print("I'm "+ age+" this year.");

System.out.println("And I'm"+height+" cm.");

System.out.println("I'm a "+type+sex+" boy.");

}

}

3、定义带参数方法

课程概要:

定义格式

为什么使用带参方法

一、定义带参方法

static void 方法名(类型1 变量1,类型2 变量2,...){

方法体-方法中的代码

}

【示例】

static void feeling(String cause, String content){

方法中的代码

}

二、为什么使用带参数方法

带参方法可以接收外界的数据,使得方法能处理更加复杂的问题,具有更灵活的功能。

【示例】

定义带参方法feeling,表达人的感情,在main方法中调用feeling()

import java.util.Scanner;

public class Introduce_Two{

static String name;

static char sex;

static short age;

static float height;

static String type;

static void input(){

Scanner scanner = new Scanner(System.in) ;

System.out.println("Name: ");

name=scanner.next();

System.out.println("Sex: ");

sex=scanner.next().charAt(0);

System.out.println("Age: ");

age=scanner.nextShort();

System.out.println("Height: ");

height=scanner.nextFloat();

System.out.println("Type: ");

type=scanner.next();

}

static void feeling(String cause, String content){

System.out. println(cause);

System.out. println(content);

}

public static void main(String[] arg){

input();

System.out.print("Hello,my name is "+name+".");

System.out.print("I'm "+ age+" this year.");

System.out.println("And I'm"+height+" cm.");

System.out.println("I'm a "+type+sex+" boy.");

feeling("I get $500", "haha...")

input();

System.out.print("Hello,my name is "+name+".");

System.out.print("I'm "+ age+" this year.");

System.out.println("And I'm"+height+" cm.");

System.out.println("I'm a "+type+sex+" boy.");

feeling("I lost my girl", "unhapyy...");

}

}

4、带返回值的类方法

课程概要:

为什么使用带返回值方法

定义格式

一、为什么使用带返回值方法

1、在Java的Math类中定义了许多具有计算功能的方法,这些方法也称为函数。

例如:double Math.sqrt( double value)

2、Java允许程序员自定义这种具有计算并能返回结果的方法。

二、定义格式

static 返回值类型 方法名(参数列表){

方法中的代码

return 返回的数据;

}

示例: 定义一个计算并返回两个数和的方法add,代码如下:

static double add(double d1, double d2){

return d1+d2;

}

【示例】

定义一个能保留小数点后面任意位的方法pround, 在main方法中调用该方法,保留指定小数点后任意位。

import java.util.Scanner;

public class Test_03{

static double pround(double value, int index){

//compute 10^n

double pow10=Math.pow(10, index);

//compute value * (10^n)

double result=value*pow10;

//rounding the result

result=Math.round(result);

result/=pow10;

return result;

}

public static void main(String[] args){

System.out.println("the result of two decimal places of 3.758 is "+pround(3.758, 2));

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值