java 打印没有main方法的hello world

xkrw2x1b  于 2023-11-15  发布在  Java
关注(0)|答案(7)|浏览(168)

我正在使用Eclipse。我正在尝试编写一个不包含main函数的程序,但仍然会打印Hello, World

public class Q 
  {
     static 
    {
        System.out.println("Hello World");
        System.exit(0);
    }
  }

字符串
但是这个程序没有给我预期的结果。一个错误来了,说main方法在类Q中找不到。我在哪里犯了一个错误?

unhi4e5o

unhi4e5o1#

您仍然需要 run 程序来执行静态初始化块,如果没有适当的main方法(从Java 71开始),您就无法做到这一点。现在,这并不是说main实际上需要包含任何代码:

class Q {
    static {
        System.out.println("Hello World");
        System.exit(0);
    }

    public static void main(String[] args) {}
}

字符串
1您的代码 * 实际上在Java 6及以下版本中工作 * -您不需要main方法。这是因为static初始化块 * 在 * 搜索main方法之前执行。但是,在您的情况下,您在该块的末尾使用System.exit(0)退出程序,因此Java从不查找main,您不会收到错误。

bwntbbo3

bwntbbo32#

每个Java应用程序都必须包含一个带有main方法的类,所以你的错误会一直存在,直到你在程序中的一个类中声明了一个main方法。

goucqfw6

goucqfw63#

这是不可能的。你的程序必须包含main方法,否则系统不知道要运行哪段代码。

eanckbw9

eanckbw94#

你的错误是你试图运行没有main方法的类(正如你解释的那样)。
JVM正在寻找接受数组String作为参数的公共静态void main方法,作为任何程序的入口点。

eqfvzcg8

eqfvzcg85#

Java程序从main方法开始执行,main方法的方法标题如下:
public static void main(String[] args)”
(http://en.wikipedia.org/wiki/Main_function#Java)
你应该把你的类修改成类似于我下面所写的。

public class Q 
{
     public static void main(String[] args) 
     {
        System.out.println("Hello World");
        System.exit(0);
     }
}

字符串

qzlgjiam

qzlgjiam6#

程序将为此代码运行
你只需要使用javac Hello.java编译它,然后在控制台上执行它,通过java Hello.java输出。确保java编译器和一切都正确完成。
谢谢!祝你有愉快的一天。

evrscar2

evrscar27#

import java.sql.*;
import java.io.*;
import javax.sql.*;
public class Emsa
{
public static void main(String args[])
{
        int ch;
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con =DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","hr","hr");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from Empdirc");
while(rs.next())           
            do
            {
                System.out.println("\n");
                System.out.println("ENTER EMPLOYEE DETAILS:");
                System.out.println("1.Insert Record into the Table");
                System.out.println("2.Update The Existing Record.");
        System.out.println("3.Display all the Records from the Table");
                System.out.println("4.Check PRIVILAGE LEAVE and Casual Leaves");
                System.out.println("5.Exit");
                System.out.println("Enter your choice: ");

                BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
                ch=Integer.parseInt(br.readLine());

                  switch(ch)
                {
                case 1:

                System.out.println("1.INSERT EMPLOYEE ID.");
                int num= Integer.parseInt(br.readLine());
                System.out.println("2.INSERT EMPLOYEE NAME");
                String ename=br.readLine();
                System.out.println("3.INSERT EMPLOYEE DESIGNATION");
                String desig=br.readLine();
                System.out.println("4.INSERT EMPLOYEE DATEOFBIRTH");
                String dob=br.readLine();
                System.out.println("5.INSERT EMPLOYEE PHONE NO OR ANY CONTACT");
                String mob= br.readLine();
                System.out.println("6.INSERT EMPLOYEE EMAIL ID");
                String email= br.readLine();
                System.out.println("7.INSERT EMPLOYEE SALARY");
                String sal=br.readLine();
                System.out.println("8.INSERT EMPLOYEE paid LEAVES");
                String pl=br.readLine();
                System.out.println("9.INSERT EMPLOYEE CASUAL LEAVES");
                String cl=br.readLine();
                System.out.println("10.INSERT EMPLOYEE FINAL SALARY");
                String fi= br.readLine();
                System.out.println("11.STATUS");
                String s=br.readLine();

                    String sql="insert into EmpDirc values(?,?,?,?,?,?,?,?,?,?,?)";
                    PreparedStatement p=con.prepareStatement(sql);
                    p.setInt(1,num);
                    p.setString(2,ename);
                    p.setString(3,desig);
                    p.setString(4,dob);
                    p.setString(5,mob);
                    p.setString(6,email);
                    p.setString(7,sal);
                    p.setString(8,pl);
                    p.setString(9,cl);
                    p.setString(10,fi);
                    p.setString(11,s);
public static boolean abcd(String str)
    {
        int x;
        for(int mob= 0 ; mob < str.length() ; mob++)
        {
            x = (int)str.charAt(mob);
            if( x < 10 || x > 0)
            return false;    
        }
        return true;
    }
                    p.executeUpdate();
                    System.out.println("Record Added");

                    //p.close();
                    //con.close();
                    break;

            case 2:
                    System.out.println("UPDATE EMPLOYEE id : ");
                    int emnum=Integer.parseInt(br.readLine());
                    System.out.println("UPDATE EMPLOYEE DESIGNATION : ");
                    String emdesig=br.readLine();
                    System.out.println("UPDATE EMPLOYEE PHONE: ");
                    String emphn=br.readLine();
                    System.out.println("UPDATE EMPLOYEE EMAIL: ");
                    String emmail=br.readLine();
                    System.out.println("UPDATE EMPLOYEE SALARY: ");
                    String emsal=br.readLine();
                    System.out.println("UPDATE EMPLOYEE PL: ");
                    String empl=br.readLine();
                    System.out.println("UPDATE EMPLOYEE CL: ");
                    String emcl=br.readLine();
                    System.out.println("UPDATE EMPLOYEE FINAL SALARY: ");
                    String emfi=br.readLine();
                    sql="update EmpDirc set Desig=?, Mob=? , Email=?, Sal=? , fi=? where Eid=?";
                    PreparedStatement  ps=con.prepareStatement(sql);

                    ps.setString(1,emdesig);
                    ps.setString(2,emphn);
                    ps.setString(3,emmail);
                    ps.setString(4,emsal);
                    //ps.setString(5,empl);
                    //ps.setString(6,emcl);
                    ps.setString(5,emfi);
                ps.setInt(6,emnum);
                    ps.executeUpdate();
                    System.out.println("Record Updated");
                    //p.close();
                    //con.close();
                    break;

case 3 :    System.out.println("Displaying the Data ");

           //Statement stmt=con.createStatement();
         ResultSet res=stmt.executeQuery("select * from Empdirc");
while(res.next())
            System.out.println("Eid"+res.getInt(1)+"Ename "+res.getString(2)+"Design "+res.getString(3)+"Dob "+res.getString(4)+"Mobile no."+res.getString(5)+"Email "+res.getString(6)+"Salary "+res.getString(7));
                   break;
case 4 : System.out.println("CALCULATING");
            sql="update EmpDirc set Pl=?, Cl=? where Estatus=?";

                    PreparedStatement pes=con.prepareStatement(sql);
                pes.setInt(1,15);
                pes.setInt(2,07);
                 pes.setString(3,"permanent");
            pes.executeUpdate();
System.out.println("Record Updated");


                    case 5:
                    System.exit(0);
break;

                    default:
                    System.out.println("Invalid Choice");
                    break;
}
}while(ch!=2);

con.close();
}
catch(Exception e)
{
System.out.println(e);
}
}
}

字符串

相关问题