关于public class 类名{ public static void main(String[] args)}的一些说明

Test.java

/*
    1、在java中任何有效的代码必须写到“类体”当中,最外层必须是一个类的定义。
 
    2、public表示公开的,class表示定义一个类,Test是一个类名。类名后面必须是
    一对大括号,这一对大括号被称为“类体”
 
    3、大括号必须是成对的。并且建议都要成对编写,这样才不会丢掉。
        {}
        []
        ()
 
    4、什么时候代码缩进?
        我包着你,你就比我低一级。你就需要缩进。
        没有合理的缩进,代码可读性很差。
        或者也可以这样所,大括号里的都需要缩进。
        缩进就是可读性问题,不缩进也不影响程序的编译和执行。
         
*/
 
public class Test{ // 声明/定义一个公开的类,起个名字叫Test
 
 
    // 类体
 
 
    // 整个这一块的代码被称为:main方法(程序的入口,SUN公司java语言规定的)
    // 也就是说:JVM在执行程序的时候,会主动去找这样一个方法。没有这个规格的方法,程序是无法执行的。
    // main方法也可以叫做主方法。
    // 注意:方法必须放到“类体”中,不能放到“类体”外面。
    // 任何一个程序都要有一个入口,没有入口进不来,无法执行。
    public static void main(String[] args){ //这是一个入口方法。
         
        // 方法体
        // 注意:方法体由一行一行的“java语句”构成
        // 并且非常重要的是:任何一条java语句必须以“;”结尾,并且这个分号还得是英文的,不能用中文分号。
        // ";" 代表一条语句的结束。
        // 非常非常重要的是:方法体中的代码遵循自上而下的顺序依次逐行执行。
 
        System.out.println("Test1");
 
        // System.out.println();这行代码的作用是向控制台输出一句话。就是这个作用。
        // 注意:如果println后面小括号里的内容是一个“字符串”的话,必须使用英文双引号括起来。
        // 双引号也要成对儿写。
        System.out.println("Test2");
    }
 
     
    // 能再来一个一模一样的入口吗?
    // 不行,有语法错误
    /*
    public static void main(String[] args){
     
    }
    */
 
    // 方法2
    // 现在不执行不代表以后不执行,以后我们可以学习其它语法让他执行。
    public static void main2(String[] args){
        System.out.println("hehe");
    }
 
    // 方法3
 
    // 方法4
 
}

Test2.java

/*
D:\course\JavaProjects\02-JavaSE\chapter01>java Test2
错误: 在类 Test2 中找不到 main 方法, 请将 main 方法定义为:
   public static void main(String[] args)
 
以下程序可以编译通过,但是无法运行,符合语法规则。
*/
public class Test2{
 
}

Test3.java

/*
没有语法错误,能够编译通过,但是不能运行,因为没有main方法。
 
错误: 在类 Test3 中找不到 main 方法, 请将 main 方法定义为:
   public static void main(String[] args)
*/
public class Test3{
    static void main(String[] args){
     
    }
}

Test4.java

public class Test4{
    // 注意:args可以改名字,随意,对于主方法来说只有这个位置可以改,其它位置不能动
    public static void main(String[] fdsafdsafdsafdsa){
        System.out.println("hello world");
    }
}

Test5.java

// 以下程序符合java语法规则吗?
// 不是不运行,是编译报错。编译过不去,运行肯定不行。
 
public class Test5{
 
    // 类体当中应该是方法,而不是直接的java语句
    // 这里可以写吗?
    System.out.println("hello1");
     
    // 主方法,入口
    public static void main(String[] args){
     
    }
 
    // 这里可以写吗?
    System.out.println("hello2");
}

Test6.java

// main方法中什么也不写行吗?
// 以下程序编译和运行可以吗?
 
public class Test6{
 
    // 入口
    public static void main(String[] args){
     
    }
 
}

Test7.java

public class Test7{
     
    public static void main(String[] args){
 
        // 这个不加双引号行吗?
        // 可以,因为它是数字。
        System.out.println(100);
 
        // 是数字,加双引号行吗?
        System.out.println("100");
 
        // 以上性质一样吗?
        // 不一样:一个是字符串,一个是数字。
        // 但最终输出到控制台上一个样子,没啥区别。
 
        // 这里扩展一下:对于数字来说能进行加减乘除吗?
        // + 能用吗?
        // - 能用吗?
        // / 能用吗?
        // * 能用吗?
        // 可以
        System.out.println(100 + 200); // 300
        System.out.println(200 - 100); // 100
        System.out.println(200 * 100); // 20000
        System.out.println(200 / 100); // 2
 
    }
}

Test8.java

/*
    1、这个内容没有为什么,只能经过测试,然后根据测试结果进行记忆。
 
    2、第一个结论?
        一个java源文件中可以定义多个class。
     
    3、第二个结论?
        public的类不是必须的。可以没有。
 
    4、第三个结论?
        在源文件中只要有一个class的定义,那么必然会对应生成一个class文件。
     
    5、第四个结论?
        public的类可以没有,但如果有的话,public修饰的类名必须和源文件名保持一致。
     
    6、第五个结论?
        public的类有也只能有1个。
*/
class A{
 
}
 
/*
    Test8.java:20: 错误: 类 B 是公共的, 应在名为 B.java 的文件中声明
    public class B{
             ^
    1 个错误
*/
/*
public class B{
 
}
*/
 
// 如果定义public的类你只能这样写
public class Test8{
}
 
class C{
 
}
 
class D{
 
}
 
//错误: 类重复: Test8
/*
public class Test8{
}
*/

Test9.java

// 编译通过了
// 能执行吗?
// 想从哪个入口进去执行,你就加载哪个类就行了!!!
// 例如:java T1
// 例如:java T2
// 例如:java T3
 
// 测试不代表以后就这样写,一般一个软件的执行入口是一个。不会出现多个的。
// 以下只是一个测试罢了。
class T1{
    // 想从这个入口进去执行怎么办?
    public static void main(String[] args){
        System.out.println("T1.....");
    }
}
 
class T2{
    // 想从这个入口进去执行怎么办?
    public static void main(String[] args){
        System.out.println("T2.....");
    }
}
 
class T3{
    // 想从这个入口进去执行怎么办?
    public static void main(String[] args){
        System.out.println("T3.....");
    }
}
  • 21
    点赞
  • 100
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值