java 源文件存储_JAVA源文件的编写与保存
(一)源文件的编写与保存
1>编写源文件
2>保存源文件
如果源文件中有多个类,那么只能有一个类是public类;如果有一个类是public类,那么源文件的名字必须与这个类名字完全相同,扩展名是.java;如果源文件没有public类,那么源文件的名字只要和某个类的名字相同,并且扩展名是.java就可以了。
(二)编译
在保存了源文件后,就要使用Java编译器(javac.exe)对其进行编译了。
1>编译器(javac)
Dos命令用javac源文件名
进行编译形成字节码文件 .class
2>字节码文件(.class文件)
如果源文件中包含多个类,编译源文件将生成多个扩展名为.class的文件,在每个扩展名为.class文件中只存放一个类的字节码,其文件名与该类的名字相同,这些字节码文件被存放在与源文件相同的目录中。
如果源文件中有语法错误,编译器将给出错误提示,不生成字节码文件,编写者必须修改源文件,然后再进行编译。
编译上面那个例子的源文件将得到两个字节码文件,即Hello.class和Student.class。如果对源文件进行了修改,必须重新编译,再生成新的字节码文件。
3>字节码的兼容性
JDK1.5版本以后的编译器和以前版本的编译器有一个很大的不同,即不再向下兼容。也就是说,如果在编译源文件时没有特别约定,JDK1.6编译器生成的字节码只能在安装了JDK1.6或JRE1.6的Java平台环境中运行。可以用“-source”参数约定字节码适合的平台。如果Java程序中并没有用到JDK1.6的新功能,在编译源文件时可以使用“-source”参数,例如:
javac -source 1.4 文件名.java
这样编译生成的字节码可以在1.4版本以上(含1.4版本)的Java平台上运行。如果源文件使用的系统类库没有超出JDK1.1版本,在编译源文件时应当使用-source参数,取值为1.1以使字节码有更好的可移植性。
-source参数的可取值有1.7、1.6、1.5、1.4、1.3、1.2、1.1。
如果在使用JDK1.7编译器时没有显式地使用“-source”参数,JDK1.7编译器将默认使用该参数,并取值1.7。
注:在编译时,如果出现提示file Not Found,请检查源文件是否在当前目录中,比如D:\FishC_Java中,以及检查源文件的名字是否被错误地命名为hello.java或hello.java.txt。
(三)运行
1>应用程序的主类
一个Java应用程序必须有一个类含有public static void main(String [] args)方法,称这个类是应用程序的主类。args是main方法的一个参数,是一个字符串类型的数组(注意String的第一个字母是大写的)
2>解释器(java)
使用Java虚拟机中的Java解释器(java.exe)来解释、执行其字节码文件。Java应用程序总是从主类的main方法开始执行,因此,需进行主类字节码所在目录,比如D:\FishC_Java,然后使用Java解释器(java.exe)运行主类的字节码
当Java应用程序中有多个类时,Java解释器执行的类名必须是主类的名字(没有扩展名)。当使用Java解释器运行应用程序时,Java虚拟机首先将程序需要的字节码文件加载到内存,然后解释执行字节码文件。当运行Java应用程序时,虚拟机将主类和其他类加载到内存。当虚拟机将(主类的.class)加载到内存时,就为主类中的main方法分配了入口地址,以便Java解释器调用main方法开始运行程序。
java 源文件存储_JAVA源文件的编写与保存相关推荐
- java 批量存储_java I/O 批量插入保存文件
[java]代码库package cq.price; import java.io.File; import java.util.ArrayList; import java.util.List; i ...
- java文件后缀_java源文件名的后缀是什么?
java源文件名的后缀是:".java".java编译后的文件扩展名是:".class":"class"文件全名称为"Java c ...
- 后缀名为java的文件_Java源文件后缀名为()
下列各项中,我国会计实务中对应收账款核算表述正确的是A.坏账损失核算采用直接转销法B.应收账款 下列属于绩效管理方法的有().A.关键业绩指标法B.经济增加值法C.平衡计分卡D.战略地图 王盛林给&q ...
- java 常量存储_JAVA 存储空间 寄存器 堆栈 堆 常量存储 非RAM存储
1.寄存器 这是最快的存储区,因为它位于处理器内部,数量极其有限,所以寄存器根据需求进行分配,你不能直接控制,也不能在程序中感 觉到寄存器存在的任何迹象. 2.堆栈 位于通用RAM(随机访问存储器)中 ...
- java 数据类型 存储_Java数据类型以及存储
String str1 = new String("abc"); //数据存储在堆中 String str2 = new String("abc"); //数据 ...
- java clob存储_java oracle clob string 大字符串存储
[导读]单位用到了oracle存储string类型到数据库里的clob,上网查看资料找到解决方案. 单位用到了oracle存储string类型到数据库里的clob,上网查看资料找到解决方案.如下:pu ...
- java代码自动对齐_java程序实现编写代码时变量名垂直对齐的风格
记录英语单词时,想把英语和中文翻译分别对齐,有些人写代码喜欢把变量按这种方式对齐.在网上没搜到相关方法,于是自己试着写代码去实现,原本以为很简单,写的时候才发现有不少问题.先看效果: 普通的 对齐前: ...
- ldap java 对象 存储_java - 修改UID在LDAP存储库 - SO中文参考 - www.soinside.com
我使用LdapTemplate对LDAP库开发应用程序的春天启动了获取用户信息. 我使用的用户电子邮件作为UID,当用户更新他的电子邮件,我必须得更新自己的UID.问题是,下面的工作方法,对所有的人域 ...
- java jdbc事务_Java JDBC事务管理和保存点
java jdbc事务 Transaction Management in java is required when we are dealing with relational databases ...
- java memcached 存储对象_memcached—向memcached中保存Java实体需注意的问题
今天以代码实例的形式总结一下向memcached中保存Java实体需注意的问题: memcached工具类代码: package com.ghj.packageoftool; import java. ...
最新文章
- JAVA时间日期处理类,主要用来遍历两个日期之间的每一天。
- WINCE5.0+S3C2443系统每隔几分钟会自动关闭LCD显示
- HDU - 3081 Marriage Match II(二分+并查集+最大流/匈牙利删边)
- wxpython bind自定义_wxPython的 - 如何从自定义对话框WX
- 51信用卡在微服务架构下的监控平台架构实践
- Python案例:破译爬虫项目实践活动日期密码
- ps里面怎么插入流程图_流程图很难画?学会这3个方法,5分钟能绘制出好看又高级的流程图...
- 我很多文章都有建议大伙不要轻易去创业
- 精通Android开发 0
- 搜狗推出庭审语音识别系统 人工智能下的全新应用
- ASP.NET Core Razor 页面入门
- 你要知道的内存条知识
- 对于listview条目item上checkbook点击监听回调更新listview外UI以及对listview外checkbook点击监听itemUI变化
- model.evaluate 和 model.predict
- 【Linux】循序渐进学运维-tomcat配置文件详解
- Qt编写物联网管理平台22-报警联动
- Qt学习经验之quit()、exit()、close()
- 帆软10.0连接oracle 12c rac报错问题解决
- 润乾报表通过JS自带函数来实现自动计算中的四舍五入
- 如何删除网络驱动器中记住的账号和密码(win10和Mac)
热门文章
- C#中Winform控件扁平化设计
- Ubuntu下shift键失灵解决办法
- 茅侃侃自述离职Majoy经过:让我们从“失败”开始
- Python爬虫+requests+伪装浏览器 爬取小说入门总结
- 电子电路计算机仿真应用,电力电子电路的计算机仿真
- 深度学习——安装Nvidia 驱动(亲测有效)
- Udacity 传感器融合笔记 (一)lidar
- 零代码:如何使用吾来机器人实现表格问答?
- 计算机纳入高考作文,高考作文听人家说今年的高考作文是用计算机批 – 手机爱问...
- 视频贴片广告有哪些形式,视频贴片广告展示形式如何?