【Java面试手册-基础篇】Java中的main()方法能否被重载?

答案是肯定的,我们可以重载main()方法,一个Java类可以有任意数量的main()方法,比如下面的 MainDemo 类,就有多个 main() 方法。

package com.magic.main;

public class MainDemo {

    public static void main(String[] args) {
        System.out.println("Hello World!");
        main();
        main("test".toCharArray());
        main(new int[]{0});
        main("test");
        main(0);
    }

    public static void main() {
        System.out.println("no args");
    }

    public static void main(char[] args) {
        System.out.println("args type is char[]");
    }

    public static void main(int[] args) {
        System.out.println("args type is int[]");
    }

    public static int main(String arg) {
        System.out.println("arg type is String");

        return 0;
    }

    public static void main(int arg) {
        System.out.println("arg type is int");
    }

}

运行程序,可以看到输出了以下的结果:

Hello World!

no args
args type is char[]
args type is int[]
arg type is String
arg type is int

可以看出,main()方法是可以被重载的,那么另一个问题又来了: Java中的main()方法能否被覆盖重写呢?

更多有关Java面试相关的知识点可以关注【Java面试手册】小程序,涉及Java基础、多线程、JVM、Spring、Spring Boot、Spring Cloud、Mybatis、Redis、数据库、数据结构与算法等。

【Java面试手册-基础篇】Java中的main()方法能否被重载?

Original: https://www.cnblogs.com/javatop/p/16514580.html
Author: 然笑后端
Title: 【Java面试手册-基础篇】Java中的main()方法能否被重载?

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/586444/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Java-SpringBoot实现AOP (@Around)

    AOP基本总结 连接点(JoinPoint): 连接点是程序运行的某个阶段点,如方法调用、异常抛出等 切入点(Pointcut): 切入点是JoinPoint的集合 是程序中需要注…

    Java 2023年6月8日
    087
  • idea自动提示功能消失解决方法

    idea自动提示功能消失解决方法 ​ 在使用idea工具时可能会基于各种各样的原因导致配置文件中没有提示,这个很让人头疼,所以配置文件自动提示功能消失了怎么解决呢。 ​ 在了解如何…

    Java 2023年6月5日
    0125
  • 设计模式-day04

    5.6 组合模式 ​ 对于这个图片肯定会非常熟悉,上图我们可以看做是一个文件系统,对于这样的结构我们称之为树形结构。在树形结构中可以通过调用某个方法来遍历整个树,当我们找到某个叶子…

    Java 2023年6月13日
    071
  • 并发编程基础(下)

    书接上文。上文主要讲了下线程的基本概念,三种创建线程的方式与区别,还介绍了线程的状态,线程通知和等待,join等,本篇继续介绍并发编程的基础知识。 sleep 当一个执行的线程调用…

    Java 2023年6月5日
    0111
  • 微服务框架核心源码深度解析<<大厂学院完结>>

    Sentinel核心源码解析 Sentinel是分布式系统的防御系统。以流量为切入点,通过动态设置的流量控制、服务熔断等手段达到 保护系统的目的,通过服务降级增强服务被拒后用户的体…

    Java 2023年6月7日
    077
  • AES php java 互转

    php 注意:php 的 mcrypt_簇 在 7.1.0 版本中开始 deprecated,并在 7.2.0 版本中彻底废弃 ,可以增加@来抑制报错 mcrypt always …

    Java 2023年5月29日
    089
  • Spring 概述

    1. 什么是 spring? 1.Spring &#x662F;&#x4E2A;Java&#x4F01;&#x4E1A;&#x7EA7;&a…

    Java 2023年6月5日
    098
  • Java基础之 注释、标识符、关键字

    在代码量比较多,项目结构复杂起来,我们就需要用到注释。 注释不会被执行,是给写代码的人看的 书写注释是一个非常好的习惯 在Java中的注释有三种: 单行注释 多行注释 文档注释 示…

    Java 2023年6月8日
    072
  • Java中Comparable讲解

    Comparable是排序接口;若一个类实现了Comparable接口,就意味着”该类支持排序”。可以使用Arrays.sort()对改类进行排序。 讲解 …

    Java 2023年5月29日
    073
  • 设计模式之行为型模式-访问者模式

    访问者模式(Visitor Pattern) 一、 介绍 模式定义:封装一些作用于某种数据结构中的各元素的操作,它可以在 不改变数据结构的前提下定义作用于这些元素的 新的操作。 意…

    Java 2023年6月7日
    084
  • Canal-监听数据库表的变化

    1. 简介 Canal是阿里巴巴旗下的一款开源项目,纯Java开发。基于数据库增量日志解析,提供增量数据订阅&消费功能。 工作原理 Mysql主备复制原理 MySQL ma…

    Java 2023年6月7日
    0116
  • Java:通过标记直接跳出嵌套的循环结构

    这是我在刷面试题的时候遇到的一个使用方法,之前甚至对这种方法闻所未闻,不禁感慨自己的才疏学浅。 闲话少说,直接进入正题。 具体的使用就是在需要跳出的循环结构前面加一个标记(如out…

    Java 2023年6月15日
    078
  • Mysql学习

    显示字符集编码 mysql架构 逻辑架构 Client : 提供连接MySQL服务器功能的常用工具集 Server : MySQL实例,真正提供数据存储和数据处理功能的MySQL服…

    Java 2023年6月8日
    089
  • 深入剖析堆原理与堆排序

    堆的介绍 完全二叉树:完全二叉树是满二叉树去除最后N个节点之后得到的树((N \geq0, N \in N^*)) 大根堆:节点的父亲节点比自身节点大,比如根节点的值为(8),比其…

    Java 2023年6月8日
    081
  • Java 15 新特性:隐藏类

    什么是隐藏类 隐藏类,是一种不能被其他类直接使用的类。引入隐藏类的主要目的是给框架来使用,使得框架可以在运行时生成类,并通过反射间接使用它们。可能有点抽象,不要紧,下面我们通过一个…

    Java 2023年6月9日
    069
  • SpringBoot包扫描之多模块多包名扫描和同类名扫描冲突解决

    前言 我们在开发 springboot项目时候,创建好SpringBoot项目就可以通过启动类直间启动,运行一个web项目,非常方便简单,不像我们之前通过 Spring+Sprin…

    Java 2023年6月13日
    090
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球