在java中main函数如何调用外部非static方法

 更新时间:2020年12月08日 10:58:01   作者:liushao  
这篇文章主要介绍了在java中main函数如何调用外部非static方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

使用外部方法时(不管是static还是非static),都要先new一个对象,才能使用该对象的方法。

举例如下:

测试函数(这是错误的):

public class Test {
 
 public static void main(String[] args) {
  Employee employee = null;
  
  employee.setName("旺旺"); //有警告,况且这里也执行不下去
  employee.setEmail("ww@qq.com");
  employee.setPwd("123333");
  
  System.out.println(employee.getName()+" "+employee.getEmail()+" "+employee.getPwd());
 }
}

虽然,把Employee类中的方法都写成static,main函数就可以调用了。但都知道,static类型在程序执行前,系统会为其分配固定的内存。如果所有方法都这样做,系统不崩溃了。

正确的做法:

使用外部非static方法时,要先new一个对象,才能使用该对象的方法。

public class Test {
 
 public static void main(String[] args) {
  Employee employee = new Employee(); 
  
  employee.setName("旺旺"); 
  employee.setEmail("ww@qq.com");
  employee.setPwd("123333");
  
  System.out.println(employee.getName()+" "+employee.getEmail()+" "+employee.getPwd());
 }
}
public class Employee{
 private Integer id;
 private String name;
 private String pwd;
 private String email;
 
 public Employee() {
 
 }
 public Integer getId() {
  return id;
 }
 public void setId(Integer id) {
  this.id = id;
 }
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 
 public String getPwd() {
  return pwd;
 }
 public void setPwd(String pwd) {
  this.pwd = pwd;
 }
 public String getEmail() {
  return email;
 }
 public void setEmail(String email) {
  this.email = email;
 }
}

补充知识:java中static方法与非static方法之间的调用关系

java中static方法与非static方法之间的调用关系,

有以下四种:

1、非static方法调用非static方法,直接通过方法名调用

2、static方法调用static方法,直接通过方法名调用

3、非static方法调用static方法,直接通过方法名调用

4、static方法调用非static方法,通过类对象来调用

示例如下:

package com.chendi.objectNav;
public class MainClass {
  public static void main(String[] args){
    Circle circle = new Circle();
    Line line = new Line();
    //静态方法调用静态方法
    doSomeThing(circle);
    doSomeThing(line);
    //静态方法调用非静态方法
    MainClass mainClass = new MainClass();
    mainClass.noStatic();
  }
  public void noStatic(){
    //非静态方法调用非静态方法
    test1();
    //非静态方法调用静态方法
    test2();
  }
  public void test1(){
    System.out.print("1");
  }
  public static void test2(){
    System.out.print("2");
  }
  public static void doSomeThing(Shape shape){
    shape.erase();
  }
}

以上这篇在java中main函数如何调用外部非static方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java中String类常用方法使用详解

    Java中String类常用方法使用详解

    String类是一个很常用的类,它位于java.lang包下,是Java语言的核心类,用来保存代码中的字符串常量的,并且封装了很多操作字符串的方法。本文就来聊聊String类常用方法使用,感兴趣的可以了解一下
    2022-08-08
  • Java四位电话号码的加密方法

    Java四位电话号码的加密方法

    这篇文章主要为大家详细介绍了Java四位电话号码的加密方法,数据是四位的整数,在传递过程中进行加密,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • Java中常见的XML解析方法与应用详解

    Java中常见的XML解析方法与应用详解

    XML(eXtensible Markup Language)是一种用于存储和传输数据的标记语言,被广泛应用于表示和交换独立于应用程序和硬件平台的结构化信息,下面我们就来看看它的常见解析方法有哪些吧
    2024-01-01
  • Java UrlRewriter伪静态技术运用深入分析

    Java UrlRewriter伪静态技术运用深入分析

    通常我们为了更好的缓解服务器压力,和增强搜索引擎的友好面,都将文章内容生成静态页面,这就产生了伪静态技术,也就是我们常说的Url Rewriter重写技术
    2012-12-12
  • Java设计模式——工厂设计模式详解

    Java设计模式——工厂设计模式详解

    这篇文章主要介绍了Java设计模式——工厂设计模式详解,具有一定参考价值,需要的朋友可以了解下。
    2017-11-11
  • 解决idea中debug工具栏消失后如何显示的问题

    解决idea中debug工具栏消失后如何显示的问题

    这篇文章主要介绍了解决idea中debug工具栏消失后如何显示的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • java常用工具类 Date日期、Mail邮件工具类

    java常用工具类 Date日期、Mail邮件工具类

    这篇文章主要为大家详细介绍了java常用工具类,包括Date日期、Mail邮件工具类,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-05-05
  • 简单分析Java线程编程中ThreadLocal类的使用

    简单分析Java线程编程中ThreadLocal类的使用

    这篇文章主要介绍了Java线程编程中ThreadLocal类的使用,包括使用其对共享变量的操作的分析,需要的朋友可以参考下
    2015-12-12
  • Java对象的内存布局详细介绍

    Java对象的内存布局详细介绍

    这篇文章主要介绍了Java对象的内存布局,我们知道在Java中基本数据类型的大小,例如int类型占4个字节、long类型占8个字节,那么Integer对象和Long对象会占用多少内存呢?本文介绍一下Java对象在堆中的内存结构以及对象大小的计算
    2023-02-02
  • Ajax实现省市区三级联动

    Ajax实现省市区三级联动

    这篇文章主要为大家详细介绍了jQuery ajax实现省市县三级联动的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到你
    2021-07-07

最新评论