Java 是一门伟大的面向对象程序设计语言,Java 诞生于1995年5月目前属于Oracle公司,Oracle Java Technologies | Oracle
Java 是一种高级语言,你可能听过的其他高级语言还有Python、C、C++等。
有“高级语言”自然也有“低级语言”,一般计算机世界里把“低级语言”叫做机器语言或者汇编语言,实际上计算机只能运行低级语言,所以高级语言编写的程序必须先被翻译成低级语言才能运行。
高级语言的优点非常多,它的更容易编程、代码更容易阅读和修改。其次高级语言具备可移植性,在不修改的情况下可以运行多种计算机平台,比如Windows电脑、Mac电脑,而低级语言只能在一种计算机上运行。所以目前基本上所有的程序都是采用高级语言进行编写的。
Java 从诞生起到现在一直都是世界上最受欢迎的语言,常年占据排行榜第一位。现代程序员学握Java 是一个非常不错的选择,在国内基本上90%的公司都在采用Java进行程序设计。
Java和其他的高级语言一样,需要先翻译成低级语言才能被计算机执行。目前世界上这个编程语言翻译主要有两种方式
•解释(interpreting)
•编译(compiling)
完成解释任务的程序叫解释器,解释器会按行(一行一行的读取)对程序进行翻译,然后执行命令。
完成编译任务的程序叫做编译器,它会在高级语言执行之前一次性对该程序进行完整的编译,所以程序的运行是在编译过程之后。我们一般把这种高级语言称为源代码(sgurce code,我们经常说的coding 就是写源代码),编译器生成的程序称为可执行程序(executable)。
Java比较强大,它既可以被编译也可以被解释,不同的是Java 编译过程开不生成机器语言,而是生成字节码。字节码和机器语言一样,但是它具备高级语言的可移植性,因此在一台机器上编译Java,在另外一台机器上也可以被解释运行,这就是 Jave 语言能够在诞生的时候就瞬间超越了其他编程语言的核心原因:一次编写到处运行。
除了生成字节码之外,Java 还创建了JVM (Java virtual machine,Java 虚拟机),通过JVM支持了字节码的解释运行。所以Java 语言的进阶可以分为两层:Java语言、JVM。了解这个对之后程序的运行和代码中出现的问题能够更容易理解。
如上所说,Java 的运行是要把源代码编译成字节码,通过JVM来运行。
Java源代码是一个后缀为java的文本文件,如下所示
注意:Java 文件名必须是英文字母(有数字也可以,尽量不用数字),并且不能有空格。一般来说 Java 文件名首字母是大写的,比如说:User.java、School.java、Book.java
注意Java对于字符串的和输出都是用 " (英文双引号)
System.out.println("")这何代码执行的是打印一行,println其实是print new line单词的缩写
不管是简单的还是复杂的Java代码都是类似这样的格式,所以在开始学习的时候知道格式就好啦。
把上图换成格式是这样的
补充说明一下,Java 代码基本上是一行一行的执行的,所以每一代码行结束的地方都有 ; 作为结束字符,之后我们都是遵循这样的Java 代码规范,因为你不遵守编译会失败的!
上面的例子中,我们使用到的 main 函教是个非常特殊的方法,它是Java 程序的入口
我们在以后所有的代码里,都是从main 函数启动我们的Java 程序的,没有main函数,Java程序就无法执行哦
System.out.println这个是我们掌握的第一行代码,在以后我们也会经常会运用到,它的作用就是输出一个内容到控制台里并且自动换一行
与之相对应的是System.out.print,这个也是输出内容到控制台,不同的是不换行
对于初学者,只需要知道Java所有代码都是写在后缀名为 .java的文件里,所谓Java对象就可以遵循Java格式的文本文件,一般把Java文件叫做Java类
Java文件名都是由首字母大写的英文单词组成
Java 源码是由多个后缀名为 ,java的文本文件组成。创建Java类文件有四个规范需要遵守
1.文件名由 类名+,java 组成,比如说 HelloWordjava
2.类名遵循大驼峰命名法(下面有介绍驼峰命名),就是首字母大写,另外类名里不能有中文和特殊字符哦(比如:&、#、@、*等),只能是字母和数字。比如:HelloWord、Test、Test40 3.Java类内容遵守固定的格式
比如说 Java 文件是Housejava,那么文件内容是
类名称等同于文件名(不包括后缀),且大小写必须完全一致
4.Java类是存放在Java包中的,默认情况下Java工程中的代码是存放在src/main/java自录中,从这个目录开始才是包名开始的地方,这个是Java工程化推荐的目录结构。
为子让所有的Java代码看起来就是一家人写的,又采用了一种命名规则:驼峰式
骆驼有个非常明显的特点就是它的驼峰,由于它的这种非常明显的特性,编程语言模仿了这个驼峰特性,具体是啥呢?那就是把每个具体单词的首字母变成大写,这样大写的字母就像驼峰一样。
比如说:用户名称如果用英文单词来表示的话就是UserName,大家注意看一下,这个大写的U和N是不是像驼峰一样?这样的例子可以很多,比如说我的文档:MyDocument、密码:Password
创建一个正确的Java类,有两个注意点
1.驼峰命名
2.在正确的目录下创建src/main/java
src/main/java这个文件夹,这是一个非常特殊的文件夹,因为Java 工程会自动把这个文件夹下的代码认定为源代码.放在其他目录就不能识别咯哦
如果我们在这个目录下不断的创建文件,比如说创建了1000个Java类,这样好么?
1000个文件在同一个文件夹里管理特别麻烦么,比如你要打开某个文件,是不是要找很久,目录也超长的
Java 系统其实和电脑的文件系统类似的,也需要分门别类的进行文件管理,在电脑中是通过文件夹来管理文件,在Java中是通过包管理器来管理的文件的
包管理器是Jave的文件管理系统,同样支持多个目录
正如上面所述的问题,/ave 体系也非常庞大,为了让更多的代码互不侵犯,所以采用一个叫"包管理” 的机制来管理代码,简单来说就是把不同的Java 代码放在不同的文件夹里,这个义件来就是“包(package)”。
包和文件夹路径有个很大不同就是
Invoice.java 是文件名
如上,大家可以对比看看,有两个区别
•包路径采用' . '分隔
•包路径不是绝对的文件路径,它只是相对Java 工程目录的路径
d:/code/src/main/java/就是Java工程目录
现在我们说一下包名的规则,一般来说包名的开始是一个公司或者一个组织的域名的反写,如果是个人也可以遵守类似的规则,举个例子,百度的域名是baidu.com,那么包名的起始就是
com.baidu,我们就需要创建com/baidu这样的两级目录。Java的规范建议是用包管理代码
还有一个规则,除了域名之外一般还会添加一个程序的名称,比如说现在开发一个店铺系统,那么包路径就是com.baidu.shop
自定义包其实就是创建文件夹,包路径就是文件夹相对路径,比如说com.baidu.app这是一个包路径(注意包路径和子包路径直接使用,来做分隔),对应的文件路径就是
src/main/java/com/baidu/app,如果工程没有这个文件夹,就需要自己创建一下和创建文件一样,只是要大家多创建几个子文件夹哦。
如果我们在某个包下创建Java文件,那么Java类的内容就需要多个声明包路径的语法
比如com.baidu.app.Hello.java这样的Java类,我们可以分析一下,它的包名是
类名称是Hello,创建好的类代码是这样的
正如你所见,我们多了一个 package包路径;这样的语法,这个就是包的声明,注意这个语法,包路径是该Java 所在的包目录。一个文件只有一个package 语句,并且一般是在文件第一行
每个程序员的学习和工作生涯中,可能会遇到一些问题,比如,一段代码写完,过一周、一个月后就不太能记得作用或细节了;或者你写好的代码拿给别人看,别人需要看很久才能知道你的代码是做什么用的。毕竟,代码越多越难理解,越难记忆。
为了解决这个问题,引入了注释的机制。我们可以在一行或一段代码前加上注释,解释和说明这一行或这一段代码的作用、要点等重要因素(进入公司工作,还需要写明代码的作者和编码时间)。这样可以让阅读者能快速了解代码的功能;对于作者自己,也起到事后快速回忆的作用。
基本上所有的编程语言都会有代码注释,大多数高级编程语言的代码注释规范都差不多。
Java 功能代码都是英文的,是计算机系统编译、运行的。但注释不是具体的功能,是给人看的(计算机不关心注释),是帮助人 快速理解代码的,所以注释尽量用中文写,保证语言流畅、通俗易懂。
注释考验大家的语文水平。注释要写重点和关键信息,要精炼,不能写流水账,也不要写长篇的感想。
Java 遵循两种代码注释
如上例,* 包围的地方可以填你想描述的内容,如果内容太多可以多行,但是每一行都要有 * ,如下面
稍微仔细观察它的格式哦,以/**开头,每一行内容都用*来前缀,结束用*/
一般,我们会在Java 类的声明上面、方法上面使用块注释。我们看
一下例子
对于块注释,开头的/与**之间、结尾的*与/之间,都不能有空格,块注释必须以/**开头,必须以*/结尾。
下列代码是错误的
下列代码是正确的:
块注释的格式很重要哦,不要写错啦。
行注释很简单,一般用于一行文字描述,语法就是 // 注释,比如说
本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕,E-mail:xinmeigg88@163.com
本文链接:http://hpq.tttmy.cn/news/3537.html