java基础一4new.doc

上传人:cl****1 文档编号:547741849 上传时间:2024-01-17 格式:DOC 页数:39 大小:622KB
返回 下载 相关 举报
java基础一4new.doc_第1页
第1页 / 共39页
java基础一4new.doc_第2页
第2页 / 共39页
java基础一4new.doc_第3页
第3页 / 共39页
java基础一4new.doc_第4页
第4页 / 共39页
java基础一4new.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《java基础一4new.doc》由会员分享,可在线阅读,更多相关《java基础一4new.doc(39页珍藏版)》请在金锄头文库上搜索。

1、Java基础一1、编译原理简单学习java编译期编译源文件生成字节码文件的过程,以及如何通过java解释器运行字节码文件。1.1、jdk的安装我们首先可以通过http:/ FilesJava下安装jdk和jre运行时环境。如图:安装完后我们可以选择“开始”“运行”,输入cmd,点及回车键,弹出如下图:在弹出的控制台窗口中我们可以输入:java version回车,弹出如下窗口表示jdk安装成功。1.2、开发环境的配置我们程序员主要是编写java源程序,即扩展名是“.java”的文件称为源文件。然后通过jdk自带的编译期javac.exe对源程序进行编译,生成可执行的字节码文件,即扩展名为“.c

2、lass”的文件称为字节码文件,或称为可执行程序。编译期和解释器所在位置如图:此时我们再控制台输入的任意目录输入“java”,结果如下图:同样在控制台输入“javac”,结果如下图:结果表示没有找到我们的javac编译器,解决方法是:通过set path=“javac所在目录”命令设置path环境变量,即可正常执行javac.exe程序了,如图:当然这种对于环境变量的设置只对当前窗口生效,对其他窗口无效,要想长期有效,我们可以通过“我的电脑”“属性”“高级”标签下的“环境变量”按钮设置:环境变量设置分为用户级的和系统级的,我们可以在任意其一进行设置。以用户级为例:如果没有变量名为path的,我

3、们可以点击新建按钮,在弹出的对话框中的变量名中输入path,在变量值中输入javac.exe所在的目录即可。1.3、编译与运行我们的编译器只能编译文件扩展名为“.java”的文件,文件中可以没有任何内容,但是如果有内容必须符合java的语法规范,因为javac编译器在编译之前要先进行语法等信息的检查。以windows平台为例,在编译时文件名不区分大小写。有文件如下:两种类型的文件名都可以编译通过,但是用中文作为源文件的文件名不推荐。注意在windows平台上,文件名是不区分大小写的。即TEST.java和Test.java和TeST.java是同名文件,不允许在同一目录下同时存在。Java的解

4、释器java.exe执行的是类,即类的内容,而非类所在的文件的文件名,所以java后跟的是类名,而非类所在的文件的文件名。如下:class Testpublic static void main(String args)System.out.println(Hello world.);Javac Test.java 生成Test.class文件,要想执行当前程序,可以这样做:java Test 此时的Test是类名,而非文件名,如果我们这样做:java test 则报错:潜在说明类名是区分大小写的。1.4、Hello world我们要想编写第一个Helloworld程序,首先要将系统内部默认的

5、入口函数main方法显示声明,可以通过打印语句System.out.print(“Hello world.”);进行打印。class Testpublic static void main(String args)System.out.println(Hello world.);每个类都有一个入口函数:public static void main(String args) ,必须是public的,且要被static修饰。也就意味着我们要做的任何事情,都要在main方法中进行编写。当运行一个类时,系统会自动调用main方法,如果没有声明main方法,会报一个错误:“Exception in t

6、hread main java.lang.NoSuchMethodError: main”2、数据类型我们编写的程序永远是以处理数据为核心,比如对数据的增删改查。任何一个数据我们都应该知道它的类型,才可以更好的应用。比如在我没有具体说明的情况下,请问:1是什么类型?有人可能要说是一个整数。但是我也可以说它就是一个编号,是一个文本型的。因为1是一个常量。是一个具体值,只不过此时我们还没有定义这个值的具体类型罢了。由此可见数据类型的重要性。Java中对于数据分为两种类型,一种是基本数据类型,一种是引用型数据类型。当我们需要的类型在jdk中不存在时,我们也可以通过class关键字定义。2.1、基本数

7、据类型基本数据类型又叫原生数据类型,这种类型的数据是和变量名一并保存在相同的内存中的,变量的本身就是数据。有别于后面的引用型。基本数据类型又分为如下几种:1) 数值型:数值型包含整型(byte、short、int、long)和浮点型(float、double)2) 字符型:char类型3) 逻辑性:又叫布尔型(boolean),可取值只有true和false。以上就是我们常说的“四类八种“。2.2、引用型引用型的变量主要是通过类名称定义的变量,或者是数组类型定义的变量。因为变量名和变量值不是“捆绑“在一起的,变量名只保存了值的”地址“,而非值本身,我们可以理解变量就是操纵值的遥控器,所以我们叫

8、这种类型为引用型。我们会在后面详细介绍。2.3、变量声明所谓变量的声明就是在代码块中定义变量,同时我们可以为其赋一个初始值,这个动作又叫变量的初始化。变量在使用之前必须保证初始化。class Testint i;/变量声明public static void main(String args)int t = 6;/变量声明并初始化Test2 t2;/变量声明t2 = new Test2();/变量初始化class Test22.4、数据类型与运算数值型数据常见的操作无外乎加减乘除(+、-、*、/、%)。而java又将数值型分为:编号类型字节数1byte12short23int44long85f

9、loat46double87char28booleantrue或者false基本数据类型中1到6为数值型,是可以参与运算的,其中字符型的char也可以参与数学运算,唯独boolean类型无法参与数学运算。2.4.1、变量与常量、运算符使用常量是不可改变的量,而变量是可以改变的量。变量主要是用来存储常量,可以实现常量的反复使用。Java中任意一个常量的默认类型是int类型。任意一个浮点型的常量默认为double类型。public static void main(String args) byte b = 12;/可以通过。byte b2 = 128;/编译不能通过,超出了byte的取值范围。b

10、yte b3 = b + 12;/编译也无法通过。b+=12;/可以通过。byte b4 = 127;b4+=1;/可以通过。 System.out.println(b4);/输出结果是-128.以上程序告诉我们:当一个int类型的常量没有超出byte的取值范围时,系统会对该值进行强制类型转换,且不会造成精度丢失。而当一个超出了byte取值范围的int类型值(128)赋给byte类型变量时,系统检测到该值超出了byte的取值范围,不会对该值进行自动强制类型转换。所以在编译时会报精度丢失错误。要想编译通过,我们可以手动强制类型转换。而当两个不同类型的数值进行运算时,系统会先找到类型更宽的类型,将

11、窄类型先自动强制转换为宽类型。然后执行运算。运算结果是宽类型的。表达式b+12的结果是一个int类型,b3是byte类型,赋值语句两边的类型不匹配,虽然表达式的结果没有超出byte的取值范围,但是系统不会自动对表达式的结果进行类型转换。要想通过编译,我们必须手动强制类型转换。“+=”的意思是先执行加运算,再执行赋值语句。但是系统会自动对运算结果进行强制类型转换(当运算结果的类型宽于被赋值的变量的类型时)。所以在使用“+=”符号时要注意,一定要保证其左边的类型的宽度大于等于右边的结果的类型。“+”运算符在java中被重载了。其有两个功能,当“+”符号左右只要有一个类型是非数值型的数据,那么该符号

12、就被充当字符串连接符使用。如果左右都是数值型,那么该符号就充当数学运算符使用。public static void main(String args) System.out.println(12+23+10);/结果是:3510System.out.println(10+12+23);/结果是:101223Java中通过String定义字符串类型,String str = “I am teacher.”;任何类型和String类型执行“+”运算,其结果都是字符串类型。“+”和“-”运算符的使用,在变量之前,表示先执行加(减)一之后,再使用变量。在变量之后,则表示先使用变量,再改变变量的值。pu

13、blic static void main(String args) int i = 5;System.out.println(i+);/5System.out.println(i);/6int j = 5;System.out.println(+j);/6System.out.println(j);/62.4.2、char类型Java采用的是unicode编码。所以一个字符型的变量是可以存储一个汉字的。其实字符型的底层是采用assics码存储的。char类型的变量即可被一个字符常量赋值,也可以被一个整型常量赋值。并可以参与数学运算。public static void main(String

14、 args) char c = a , c2 = 65;System.out.println(c);/aSystem.out.println(int)c);/97System.out.println(c2);/ASystem.out.println(int)c2);/65System.out.println(c+c2);/1622.4.3、数据类型之间的转换原则在整型中的转换顺序是:byte、short、charintlongfloatdoubleString。也就是说byte、short、char在混合运算时,彼此之间不会相互转换,它们统一转换为int类型再运算。float和long类型运算的结果是float类型。public static void main(String args) byte b = 12;short s = 12;/s = s + b;报错。int i = s + b;char c = 12;/c = s + c;报错。i = s + c;long lg = 12;float f = 23.45f;f = f + lg;3、代码块在

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号