2.Java程序基础 一、完整的HelloWord写法//我的第一个Java程序publicclassHelloWord{publicstaticvoidmain(String[]args){System.out.println(Hello,Word)}}这短短的几行代码包含可Java程序的全部骨架。它可以从内到外分为三层最外层——类classJava程序的基本单位所有代码都必须写在类里中间层——main方法程序的入口JVM从这里开始执行最内层——语句真正干活的代码。二、逐行拆解2.1 第一行注释//我的第一个Java程序//开头的是单行注释注释是给程序员看的编译时会忽略这行不影响程序的运行。Java一共有三种注释方法:类型写法用途单行注释//注释内容解释一行代码简单的说明多行注释/*注释内容*/解释一段代码可以跨行文档注释/**注释内容*/生成API文档Javadoc2.2 第二行类声明public class HelloWord{}这一行定义了一个类可以把它分成三部分来看public访问修饰符表示这是一个公开类任何地方都能够访问它class关键字告诉编译器这是一个类HelloWord类名有命名规则类名的命名规则文件名必须和public类名完全一致类叫HelloWord文件名也必须是HelliWord.java大小写不能错大驼峰命名法每个单词的首字母大写不能用关键字如class等不能以数字开头可以包含字母、数字、下划线、美元符号但第一个字符必须是字母大括号表示类的主题开始这里面装着类的所有属性和方法。大括号必须成对出现否则会报错。2.3 第三行main方法程序的入口public static void main(String[ ] args){}——java最重要的一行代码main方法是Java程序唯一的入口JVM就是从这里开始执行你的代码它的写法是固定的少一个关键字都不行。public公开的——JVM要从外部调用它必须使用publicstatic静态的——不需要创建对象就可以调用JVM启动时还没有对象所以必须是staticvoid返回值类型——void表示[不需要任何返回值]main方法不需要给JVM返回结果main方法名——JVM固定查找这个名字改了就找不到入口String[ ] args参数——字符串数组用于接收命令传入参数args是argument的缩写2.4 第四行输出语句System.out.println(“HelloWord”)·想控制台打印一句话——是真正干活的一行。SystemJava.long包中的系统类代表你的程序所在的运行环境out:System类里的一个静态成员代表标准输出流即控制台printlnout对象的方法print line的缩写——打印一行内容并换行若不换行可以使用print“HelloWord”字符串字面量用英文双引号包裹里面写什么就打印什么** Java语法的三条铁律 **语句以分号结尾每行语句最后必须加分号严格区分大小写大小写不同代表的不是一个东西符号都是英文的括号、引号、分号都必须是英文半角、中文符号都会报错三、从敲代码到看到输出之间经历了什么理解了上面的结构之后再来看看完整的流程.java文件怎么变成屏幕上的那句话的第一步编译javac在命令行输入javac HelloWord.javajavac编译器会把你写的java源码翻译成字节码.class文件。这个过程会检查你写的语法有没有错误若有就不会生成.class文件第二步运行java输入java HelloWord不加后缀JVMjava虚拟机启动加载HelloWord.class找到main方法开始逐行执行里面的语句执行到System.out.println()时就把文字输出到控制台。四、新手常见错误错误1类名和文件名不一致error: class HelloWorld is public, should be declared in a file named HelloWorld.java原因public类名与文件名不同解决把文件名改成和类名一模一样错误2缺少分号error: ‘;’ expected原因某句代码后面忘记加分号解决根据错误提示检查错误哪一行末尾是否有分号错误3大小写错误error: cannot find symbol symbol: variable system location: class HelloWorld原因大小写错误导致编译器没有识别到应有的代码解决根据提示检查错误那一行是否存在大小写错误错误4找不到或无法加载主类Error: Could not find or load main class HelloWorld原因当前目录不对类名拼错运行时后面加了.class后缀解决检查文件名与类名是否一致.检查当前目录是否有.class文件运行时不要加后缀错误5main方法写错Error: Main method not found in class HelloWorld, please define the main method as: public static void main(String[] args)原因main方法少些关键字main大小写错误解决严格按照规定的样式书写public static void main(String[ ] args){}五、常用命名规范类型命名风格类名/接口名大驼峰方法名/变量名小驼峰常量名全大写下划线包名全小写什么是驼峰命名法大驼峰每个单词首字母都大写小驼峰首个单词首字母大写其余单词小写。因为名字像驼峰一样起伏所以叫做驼峰命名法