欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【java 方法的调用】JAVA方法定义和调用

程序员文章站 2024-03-25 23:59:34
...

1、基本概念

类的方法代表的是实例的某种行为或功能

定义类的方法

访问修饰 类型 方法名(参数列表){
 //方法体
}

把方法当作一个模块,是个“黑匣子”,完成某个特定的功能,并返回处理结果

2、方法分类

返回值为空void的方法
带具体返回类型的方法
不带参数的方法
带参数的方法

3、方法返回值

如果方法有返回值,方法中必须使用关键字return返回该值,返回值类型为该方法所定义的返回值类型方法内可以调用其他方法

4、java调用方法的例子

  • 4.1 java静态方法的调用有两种:一是使用对象来调用;二是可以直接用类名来调用
  • 4.2 java中寻常的方法(没有用static修饰,也不是构造方法)或者说成员方法,必须创建一个对象来调用它
  • 4.3 第三种就是构造方法,构造方法主要用于对类进行初始化
  • 4.4 还可以通过反射调用方法
import java.lang.reflect.Method;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public class HelloWord4 {

    private int age;
    private String name;

    public static void main(String[] args) {

////        new 一个对象
        HelloWord4 h1=new  HelloWord4(25,"张三");
        System.out.println("调用构造方法:"+h1);
//        java静态方法的调用有两种:一是使用对象来调用;二是可以直接用类名来调用。
        System.out.println("直接用类名来调用静态方法:"+HelloWord4.GetNowDate());
        System.out.println("使用对象来调用静态方法:"+h1.GetNowDate());
//        java中寻常的方法(没有用static修饰,也不是构造方法)或者说成员方法,必须创建一个对象来调用它
        System.out.println("使用对象调用普通方法:"+h1.GetYesToday());

//        使用反射调用方法
        try {
            Class<?> herosClass = HelloWord4.class;
            Method m1 = herosClass.getMethod("GetYesToday");
            System.out.println("使用反射调用静态方法:"+m1.invoke(h1));
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

/*java方法主要分为三种:一种是静态方法,这种方法的话用static修饰,
这个方法不需要与某个特定对象进行绑定;第二种就是常见的没有用static修饰的方法;
第三种就是构造方法,构造方法主要用于对类进行初始化。*/


//    定义静态方法获取今天的日期字符串
    public static   String GetNowDate(){
        //1. 将日期转化为特定格式的字符串
        DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        Date date = new Date();
        String record_date = format.format(date);
        return record_date;
    }

//    定义一个普通成员的方法获取昨天的日期字符串
    public String GetYesToday(){
        Date date = new Date();
        Calendar calendar = new GregorianCalendar();
        calendar.setTime(date);
        calendar.add(calendar.DATE,-1);
        date=calendar.getTime();
        //1. 将日期转化为特定格式的字符串
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
        String dateString = formatter.format(date);
        return dateString;
    }

/*    构造方法是用来实例化一个对象的。构造方法名称和类名相同,严格区分大小;没有返回值。
    构造方法的调用是在创建对象的时候调用。*/

public HelloWord4(int age,String name){
    this.age=age;
    this.name=name;
}

//重写方法
@Override
public String toString(){
    return "姓名"+":"+name+"\t"+"年龄:"+age;
}

}

调用构造方法:姓名:张三	年龄:25
直接用类名来调用静态方法:2018-09-20
使用对象来调用静态方法:2018-09-20
使用对象调用普通方法:2018-09-19
使用反射调用静态方法:2018-09-19

Process finished with exit code 0