• 初识Java


    1、初识Java的main方法

    1.1 main方法示例

    public class HelloWorld{
        public static void main(String[] args){
            System.out.println("Hello,world");
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5

    如上展示的就是最简单的一个Java程序,Java的main方法应该是当前主流编程语言中中最“长”的。
    通过上述代码,我们可以看到一个完整的Java程序的结构,Java程序的结构由如下三个部分组成:

    1、源文件(拓展名为xxx.java):源文件带有类的定义。类用来表示程序的一个组件,小程序或许只会有一个类。类的内容必须包含在花括号里面。
    2、类:类中带有一个或多个方法。方法必须在类的内部声明。
    3、方法:在方法的花括号中编写方法应该执行的语句。
    总结一下:类存在于源文件里面;方法存在于类中;语句存在于方法中。

    注意:在一个源文件中只能有一个public修饰的类,而且源文件名字必须与public修饰的类名字相同。

    1.2 运行Java程序

    Java是一门半编译、半解释型语言。先通过javac编译程序把源文件进行编译,编译后生成的.class文件是由字节码组成的与平台无关、面向JVM的文件。最后启动java虚拟机来运行.class文件,此时JVM会将字节码转换成平台能够理解的形式来运行。
    首先看程序:

    public class HelloWhorld {
    	public static void main(String[] args) {
    		Systemo.out.println("hello");
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5

    我们用记事本(Sublime)写出这一段Java代码,怎么让他跑起来?怎么运行?写这个代码的规则是什么?
    .java文件是源代码,需要java的编译器去编译,而java的编译器就是JDK中的javac.exe
    image.png
    1、我们win+r打开运行窗口,输入cmd,打开命令行窗口:
    image.png
    2、找到我们保存.java文件的位置,在命令行转到所在盘符,因为我保存在d盘,所以,我输入d:
    image.png
    3、然后输入cd (空一个格,后面复制盘文件夹地址)
    其中cd的意思就是进入某个文件夹
    image.png
    4、然后输入javac HelloWorld.java
    image.png
    5、此时虽然什么都没打印,但是当我们去看.java文件所在文件夹时,发现多了一个.class文件
    image.png
    image.png
    6、然后我们输入java HelloWorld,就会打印出hello
    image.png
    image.png
    注意:在运行Java程序前,必须先安装好JDK(Java Development Kit-即Java开发工具包),JDK里面就包含了javac和java工具,Java程序最终在JVM(Java 虚拟机)中运行的。
    【面试题】JDK、JRE、JVM之间的关系?

    • JDK(Java Decelopment Kit):Java开发工具包,提供给Java程序员使用,包含了JRE,同时还包含了编译器javac与自带的调试工具Jconsole、jstack等。
    • JRE(Java Runtime Environment):Java运行时环境,包含了JVM,Java基础类库。是使用了Java语言编写程序运行的所需环境。
    • JVM:Java虚拟机,运行Java代码

    image.png
    只要设备上安装了JDK,java代码就可以运行,这就是write once,run anywhere的意思。

    2、注释

    注释是为了让代码更容易被读懂而附加的描述信息,不参与编译运行,但是却非常重要。

    2.1 基本规则

    Java中的注释主要分为2以下三种:

    • 单行注释://注释内容(用的最多)
    • 多行注释:/注释内容/(不推荐)
    • 文档注释:/*文档注释/(常见于方法和类之上描述方法和类的作用),可以被javadoc工具解析,生成一套以网页文件形式体现的程序说明文档

    注意:

    1. 多行注释不能嵌套使用
    2. 不论是单行还是多行注释,都不参与编译,即编译之后生成的.class文件中不包含注释信息。

    当我们把代码改成下面这样:

    /**
     * 文档注释:
     * @version  v1.0.0
     * @author  Yuan
     * 初识Java
     */
    public class HelloWorld {
    	/*
    	多行注释:
    	1、main方法是Java程序的入口方法
    	2、main函数的格式是固定的,必须为piblic static void main(String[] args)
    	 */
    	
    	/**
    	 * [main方法就是程序的入口函数]
    	 * @param args [命令行参数]
    	 */
    	public static void main(String[] args) {
    		//单行注释:System.out.println是Java中标准输出,会将内容输出到空灰太
    		System.out.println("hello");
    	}
    }
    
    /**
     * 在cmd中,使用Javadoc工具从Java源码中抽离出注释
     * -d 创建目录,myhello为目录名
     * -author 显示作者
     * -version 显示版本号
     * -encoding UTF-8 -charset UF-8字符集修改为UF-8
     */
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30

    在cmd中输入javac HelloWorld.java时,他可能会报错:
    image.png
    这是因为编码不一致
    一般情况下win系统使用的是utf-8、GBK两种编码形式
    而javac默认是CMD上面是GBK
    所以我们在命令行里加上:javac -encoding utf-8 HelloWorld.java
    -encoding utf-8的意思是设置编码为utf-8
    这时就不会报错了。

    tip:
    当我们在cmd中,运行 javadoc -d myHello -author -version -encoding UTF-8 -charset UTF-8 HelloWorld.java这句代码时,我们就会生成一个类似于帮助手册的网页文件
    image.png

    2.2 注释规范

    1. 内容准确:注释内容要和代码一致、匹配,并在代码修改时及时更新。
    2. 篇幅合理:注释既不应该太精简,也不应该长篇大论。
    3. 使用中文:一般中国公司都要求使用中文写注释,外企另当别论。
    4. 积极向上:注释中不要包含负能量。

    4、标识符

    标识符:在程序中由用户给类名、方法名或者变量所取的名字。

    【硬性规则】
    标识符中可以包含:字母、数字、下划线和$符号等。
    注意:标识符不能以数字开头,也不能是关键字,且严格区分大小写。
    【软性建议】

    • 类名:每个单词的首字母大写(大驼峰)
    • 方法名:首字母小写,后面每个单词的首字母大写(小驼峰)
    • 变量名:与方法名规则相同

    例:下面那些标识符是合法的?
    A:class B:HelloWorld C:main D:123abc E:ARRAY_SIZE F: $name G: name:jim

    其中BCEF合法,A是关键字,不合法;D以数字开头,不合法;G标识符不含:,所以不合法;C不推荐,因为容易引发歧义;F不推荐。

    5、关键字

    关键字是由Java语言提前定义好的,有特殊含义的标识符或保留字。
    用户不能使用关键字来定义标识符。
    在Java中关键字有很多,包括但不限于ASCII表。

  • 相关阅读:
    【强化学习】07——规划与学习(Dyna-Q)
    优彩云采集器下载-免费优彩云采集器下载地址
    Connor学JVM - 执行引擎
    食堂用户菜品关系系统(C语言课设)
    算法强训:第三十四天
    如何摆脱自卑心理,自我提升和自我接纳是关键
    每日一题|2022-10-28|907. 子数组的最小值之和|今天不想学,后面补上
    java 数组转list
    方法研究在长安福特总装系统改进中的应用
    Nginx多IP端口路由配置
  • 原文地址:https://blog.csdn.net/Yuan_o_/article/details/125991966