首页 > 代码库 > Java初窥门径,学而时习之。.——16/10/11
Java初窥门径,学而时习之。.——16/10/11
0基础的文科生,今天开始了java语言的学习,俗话说学而时习之,所以就通过写博客的方式复习并记录学习轨迹。
首先自然是了解Java语言,由于JVM也就是虚拟机的存在这门语言实现了一次编写跨多平台运行,这也是Java风靡各平台的原因之一。之后就是了解Java目录下存放的几个重要文件夹,有存放编译器解释器等工具的bin目录,有存放附加库,开发工具所需的非核心类库的lib目录,还有归档源代码的src.zip文件。在配置环境变量,安装了文本编辑器之后,我们就进入了第一个程序HelloWorld的编写。
Java程序的开发步骤简单分为三步:
①编写源文件,用关键字class定义一个首字母大写并且不能有空格的的类名作为存放代码的容器。和大家一样,我的第一个类名也是HelloWorld。
②编译源文件,javac HelloWorld.java对源文件进行编译,产生虚拟机可以识别的字节码文件HelloWorld.class
③运行字节码文件。java HelloWorld 返回结果HelloWorld.
接着我们开始了解Java的关键字,共51个,已经在HelloWorld的编写中邂逅了class public static void等。然后是标识符及其命名规则,如DayTwo day_2 _blog $blog都是合法的标识符。需要注意的主要是不能以数字开头以及避开那51个关键字。但经过尝试,包含关键字的字符序列比如 myclass _public 也是合法的标识符。
然后是下午的重点之一变量的概念及使用。变量名就是我们给储存数据的内存空间起的别名。分为声明,赋值及使用三个步骤。变量的命名规则比标识符多了一个首字母小写,如DayTwo虽然是合法的标识符命名,但却是非法的变量命名。另外,int a=1,b=2,c=3;这样同时声明多个变量也是合法的。
最后是了解数据类型。数据类型包括基本(简单)数据类型和引用数据类型。今天主要了解的是基本数据类型,这其中又包含布尔类型和数值类型。布尔类型只有一个boolean,数值类型包括byte char short int long这五个整数类型和float double这两个浮点类型。 需要注意的是,float赋值后须加f/F,long赋值后须加l/L. 而引用数据类型只是简单介绍了class interface null等。
这就是对今天课程主要内容的回顾,另外说下自己尝试中碰到的两个小问题。
一个问题是在同时声明多个变量的练习中,发现需要输出多个变量时,System.out.println();需要重复使用多次。如下
class DataDemo{ public static void main(String[] args){ int a=1,b=2,c=3; System.out.println(a); System.out.println(b); System.out.println(c); }}
尝试用+号连接,如下
class DataDemo{ public static void main(String[] args){ int a=1,b=2,c=3; System.out.println(a+b+c); System.out.println(+a+b+c); }}
发现这两种方式输出的都是a+b+c也就是6 这个结果。多次尝试之后,发现只有如下才能让+实现连接符而不是数学加的功能。
class DataDemo{ public static void main(String[] args){ int a=1,b=2,c=3; System.out.println(""+a+b+c); }}
上面的用法输出的才是123这个我想要的结果。最后得出结论,+号在有""存在的情况下可以才会实现连接符功能,""里并不需要有内容。
第二个是char的赋值问题。首先为char赋值字符时需要加单引号‘‘,而为其赋值数字时不能加引号。当赋值为数字时,输出的结果会是这个数字对应的ASCⅡ字符。
class DataDemo{ public static void main(String[] args){ char a=065,b=‘x‘,c=65; System.out.println(a); System.out.println(b); System.out.println(c); }}
在做这项练习时,发现a b c输出的值不一样,分别是 5 x A ,仔细思考后,发现了问题所在。原因是065被识别为八进制数,对应的十进制数是53,而ASCⅡ码中53对应的就是字符5.
后来还尝试给char一些ASCⅡ码表中没有的数字比如 char a=1,b=10;也不报错,希望这个问题在后面的学习中可以得到解答。
今天就写到这儿,虽然花了一个多小时,但把今天的内容又过了一遍感觉不错,希望可以保持这样的好习惯,快速成长。文中一定不乏错误瑕疵,请不吝指出。共勉!
Java初窥门径,学而时习之。.——16/10/11