java关于调用方法的汇总

以下我们根据JAVA的调用方法做了整理和总结,以及相关的调用代码也做测试,以下来学习下。

java方法主要分为三种:

一种是静态方法

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

静态方法可以使用一个定义且实例化过的对象来调用也可以直接使用类名来调用。

实例方法必须使用一个被定义且实例化过的对象来调用。

class A{
  //静态方法,可以使用类名点方法名直接调用,比如A.sayHello()
  public static void sayHello(){
    System.out.println("静态方法输出成功:Hello");
  }
  //实例方法,必须创建类的实例,然后才能调用A a = new A(); a.sayWorld();
  public void sayWorld(){
    System.out.println("实例方法输出成功:World");
  }
}

public class MyDemo {
  public static void main(String[] args) {
    A a = null;
    try{
      a.sayHello();//调用静态方法
    }catch(NullPointerException e){
      System.out.println("调用静态方法出现了空指针异常");
    }
    try{
      a.sayWorld();//调用实例方法
    }catch(NullPointerException e){
      System.out.println("调用实例方法出现了空指针异常");
    }
  }
}

测试输出:

静态方法输出成功:Hello

调用实例方法出现了空指针异常

Java动态调用类中方法代码

使用Math.class.getDeclaredMethod("sin", Double.TYPE);访问指定的方法,其中”sin”表示要访问的方法的名称为sin,Double.TYPE表示入口参数的类型为double

import java.lang.reflect.Method; 

public class DongTai {
  public static void main(String[] args) {
    try {
      System.out.println("调用Math类的静态方法sin()");
      Method sin = Math.class.getDeclaredMethod("sin", Double.TYPE);
      Double sin1 = (Double) sin.invoke(null, new Integer(1));
      System.out.println("1的正弦值是:" + sin1);
      System.out.println("调用String类的非静态方法equals()");
      Method equals = String.class.getDeclaredMethod("equals", Object.class);
      Boolean mrsoft = (Boolean) equals.invoke(new String("明日科技"), "明日科技");
      System.out.println("字符串是否是明日科技:" + mrsoft);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
} 

运行后的输出结果

(0)

相关推荐

  • java关于调用方法的汇总

    以下我们根据JAVA的调用方法做了整理和总结,以及相关的调用代码也做测试,以下来学习下. java方法主要分为三种: 一种是静态方法 这种方法的话用static修饰,这个方法不需要与某个特定对象进行绑定:第二种就是常见的没有用static修饰的方法:第三种就是构造方法,构造方法主要用于对类进行初始化. 静态方法可以使用一个定义且实例化过的对象来调用也可以直接使用类名来调用. 实例方法必须使用一个被定义且实例化过的对象来调用. class A{ //静态方法,可以使用类名点方法名直接调用,比如A.

  • java反射调用方法NoSuchMethodException的解决方案

    目录 java反射调用方法NoSuchMethodException NoSuchMethodException问题总结 1.编译异常,这个很容易发现并解决 2.编译正常,运行报错 java反射调用方法NoSuchMethodException 1.方法定义成 public类型. 2.getMethod传参要正确 比如调用定义的:public void   show(Object obj) 要这样调用   clazz.getMethod("show",Object.class);而不是

  • php调用自己java程序的方法详解

    本文实例讲述了php调用自己的java程序实现方法.分享给大家供大家参考,具体如下: 最开始要装jdk这个就不用说了,我装的是java ee 5+jdk 1.把下载的php-java-bridge_5.2.2_j2ee.zip解压出来,里面有个JavaBridge.war 直接用winrar打开,到WEB-INF/lib/JavaBridge.jar 把这个jar包拷到 你的php目录的ext/下. 2.打开war包,里面有个java的文件夹,把他全部拷到你的PHP项目下,如/demo/java

  • Java实现调用jython执行python文件的方法

    本文实例讲述了Java实现调用jython执行python文件的方法.分享给大家供大家参考,具体如下: 在web开发时候,经常在web环境使用本地环境的第三方库什么的,本文讲解java如何执行python文件. 网上说方法有三种,其实也就两种,下面着中介绍第二种通过(jython). 方法一 java.lang.Runtime Runtime rt = Runtime.getRuntime(); try { Process proc = rt.exec("python /tmp/test.py&

  • Java使用反射调用方法示例

    本文实例讲述了Java使用反射调用方法.分享给大家供大家参考,具体如下: 一 代码 import java.util.*; import java.io.*; import java.lang.reflect.*; public class ExtendedObjectPoolFactory { // 定义一个对象池,前面是对象名,后面是实际对象 private Map<String, Object> objectPool = new HashMap<>(); private Pr

  • java编程调用存储过程中得到新增记录id号的实现方法

    本文实例讲述了java编程调用存储过程中得到新增记录id号的实现方法.分享给大家供大家参考,具体如下: 关于ms sql server2000的存储过程,主要作用是在表test中插入一条记录,然后得到新增加记录的id号. test表三个字段: ID:自动增长 yhm:用户名 字符串类型 kl: 密码   字符串类型 那么在java程序中如何调用这个存储过程才能实现,得到新增加记录的id号 存储过程如下: CREATE PROCEDURE yh_insert @yhm varchar(50),@k

  • Android中在WebView里实现Javascript调用Java类的方法

    为了方便网页和Android应用的交互,Android系统提供了WebView中JavaScript网页脚本调用Java类方法的机制.只要调用addJavascriptInterface方法即可映射一个Java对象到JavaScript对象上. 1.映射Java对象到JavaScript对象上 复制代码 代码如下: mWebView = (WebView) findViewById(R.id.wv_content); mWebView.setVerticalScrollbarOverlay(tr

  • JavaScript调用客户端Java程序的方法

    本文实例讲述了JavaScript调用客户端Java程序的方法.分享给大家供大家参考.具体如下: 一般说来,JavaScript是没有权限调用客户端可执行程序的.但有时有些特殊需要,又不得不调用.例如有时涉及客户端文件的操作此时,当然我们可以用 FileSystemObject对象来完成.又例如我们前些时做的项目中,需求是点击页面一个链接不弹出IE的那个文件下载的对话框 (有三个选项:打开.保存.取消的那个),直接把文件下载到指定目录 .此时就不得不绕过浏览器的这个对话框,自己写一个客户端的ja

  • Java编程调用微信支付功能的方法详解

    本文实例讲述了Java编程调用微信支付功能的方法.分享给大家供大家参考,具体如下: 微信开发文档地址:https://mp.weixin.qq.com/wiki/home/ 从调用处开始 我的流程: 1.点击"支付"按钮,去后台 --> 2.后台生成支付所需数据返回页面 --> 3.页面点击"确认支付"调用微信支付js.完成支付功能. 支付按钮 <div class="button" id="pay" onc

  • Java通过调用C/C++实现的DLL动态库——JNI的方法

    由于项目的需要,最近研究了java 调用DLL的方法,将如何调用的写于此,便于日后查阅: 采用的方法是JNI: Java Native Interface,简称JNI,是Java平台的一部分,可用于让Java和其他语言编写的代码进行交互. 下面是从网上摘取的JNI工作示意图: 总体说明:先在JAVA中建立一个类,通过javac生成.class,再由javah生成.h:然后将.h复制到VC下,由VC实现具体函, 并编译通过后生成DLL,将DLL放入JAVA工程中使用,完毕. 下面说说具体步骤(含实

随机推荐