Java学习10 控制台应用程序设计
来源:互联网 发布:cs软件界面设计工具 编辑:程序博客网 时间:2024/05/17 21:44
命令行参数
执行java程序时:
java <类名> [<命令行参数>]*
注意:
1. 参数须使用空格符及双引号分隔,作为实参传给main()
2. 双引号作为参数值,用两个双引号转义""
Example:
java TestCmdLineArgs Tom Kitty "Mr Brown"
系统属性
Key-Value
形式,记录当前操作系统和JVM等相关的环境信息- System.getProperties():获取所有可用的系统属性
- System或Properties类的getProperty(String):获取系统属性
System或Properties类的setProperty(String, String):添加系统属性
D:>java -Dkkk=vvv TestSystemProperties
应用场景不多,如:JDBC系统属性加载某种数据库驱动;使用系统属性指定邮件收发代理服务器的IP地址和端口号
这里写代码片
标准输入输出/标准IO
控制台输入输出
- System.out,标准输出,java.io.PrintStream类型
- System.in,标准输入,java.io.InputStream类型
- System.err,标准错误输出,java.io.PrintStream类型
- PrintStream类
- print()
- println()
- printf():提供数据格式化输出功能
读取输入的传统方法:
System.in,以字节为单位读入字节流;InputStreamReader以字符为单位,多次调用System.in读入;BufferReader提供readLine()方法读取对应数据源组成字符串返回这里写代码片
文件输入输出/文件IO
File类
- 创建File对象
这里写代码片
提供了目录管理的功能
File类的主要方法:
操作 主要方法 关于文件/目录名操作 String getName()
String getPath()
String getAbsolutePath()
String getParent() 测试操作 获取常规文件信息操作 设置和修改操作 boolean delete()
void deleteOnExit():临时文件,jvm关闭自动删除
目录操作
“读”操作相关类:
类名 说明 java.io.FileInputStream 以字节为单位 java.io.InputStreamReader java.io.FileReader 以字符为单位读取,InputStreamReader的子类 java.io.BufferedReader“写”操作相关类:
类名 说明 java.io.FileOutputStream 以字节为单位 java.io.OutputStreamWriter java.io.FileWriter OutputStreamWriter的子类 java.io.BufferedWriter java.io.PrintWriter 以字符为单位,支持汉字
可变参数
- 定义方法时,可指定使用任意数量的参数。用法:参数类型加
...
- 可变长度参数必须放在参数列表的最后,而且一个方法最多只能包含一个可变长度参数
- java中使用一维数组来处理可变参数的,所以可变参数可以通过
length
获取可变参数个数
这里写代码片
过时API
- 过时API存在替代物
- 移植Java代码时,可使用
-Xlint:deprecation
选项进行编译,以获取相关过时说明信息javac -Xlint:deprecation TestDeprecation.java
- 用户自定义过时API
- 加入注释
@deprecated
- 加入注释
这里写代码片
注解(Annotation)
java语言采用了一类新的数据类型来描述注解——注解类型相当于类或接口,每一条注解相当于该类的一个实例。注解类型采用
@interface
标记来声明:public @interface Deprecatedpublic @interface Overridepublic @interface SuppressWarnings
参考:Java注释@interface的用法【转】
- 元注解@Retention
Rentention 搭配 RententionPolicy使用;通过反射的方式读取。RetentionPolicy有3个值:CLASS
注解的信息被保留在class文件(字节码文件)中当程序编译时,但不会被虚拟机读取在运行的时候RUNTIME
注解的信息会被编译器抛弃,不会留在class文件中,注解的信息只会留在源文件中SOURCE
注解的信息被保留在class文件(字节码文件)中当程序编译时,会被虚拟机保留在运行时
- 元注解@Retention
java.lang.Override注解
- 指明被注解的方法重写了父类中的方法,如果不是合法的方法重写则编译报错
java.lang.Deprecated注解
- 过时API
java.lang.SuppressWarnings注解
- 关闭编译器对指定的一种或多种问题的提示/警告
//关闭过时提醒@SuppressWarnings(value={"deprecation"})//其他写法@SuppressWarnings(value={"deprecation","unchecked"})@SuppressWarnings("deprecation")@SuppressWarnings("deprecation","unchecked")
可关闭警告关键字:Excluding warnings using @SuppressWarnings
Java归档工具
- 将多个文件或目录合并/压缩为单个java归档文件(jar, java archive)
jar主要作用:
- 发布和使用类库
- 作为程序组件或者插件程序的基本部署单位
- 打包与组件相关联的资源文件
语法:
jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...
常用参数:
-C
:更改为指定的目录并包含以下文件-v
:在标准输出中生成详细输出示例 1: 将两个类文件归档到一个名为 classes.jar 的档案中:
jar cvf classes.jar Foo.class Bar.class
示例 2: 使用现有的清单文件
'mymanifest'
并将foo/
目录中的所有文件归档到'classes.jar'
中:jar cvfm classes.jar mymanifest -C foo/
将jar路径添加到系统变量
CLASSPATH
下,即可引用- 参考:classpath、path、JAVA_HOME的作用及JAVA环境变量配置
- JDK1.5以后,引用jre自带的类库,不再需要配置
CLASSPATH
- JDK所有java类,可在安装目录下
/jre/lib/rt.jar
找到
- Java学习10 控制台应用程序设计
- 【JavaSE入门系列】第10章_控制台应用程序设计
- Java控制台五子棋编码学习
- 想学习JAVA程序设计
- java android HTTP应用程序设计
- 基于JDBC的Java控制台应用
- 控制台应用
- java学习笔记图形程序设计及GUI应用小结(1)
- java学习笔记图形程序设计及GUI应用小结(2)
- java学习笔记图形程序设计及GUI应用小结(3)
- 学习《Java程序设计实践教程》
- java 数据库程序设计 学习笔记
- Java程序设计学习知识点总结
- MFC应用程序设计(第二版)学习笔记
- MFC应用程序设计(第二版)学习笔记
- VC学习笔记1对话框应用程序设计
- JAVA程序设计 第七章 小应用程序设计和网络程序设计
- 漫谈Java程序设计中的接口应用
- 读书 | 从行动开始,意志力差只是失败者的借口
- python 遍历文件夹中所有文件
- Android开源插件化框架汇总
- [C++] 我们常用的main()函数到底是什么?
- JDK源码学习之HashMap扩容机制resize()
- Java学习10 控制台应用程序设计
- HANA sql
- 远程服务器安装nginx
- 剑指编程(12)
- jquery完成一个日历demo练习总结
- sql-server数据库(基本概念)
- 达尔文OP2官方demo解读(一)
- Map简单应用
- 存储过程和触发器