一、Java概述
(一)基础常识
- 软件开发:制作软件;
- 人机交互:图形界面、命令行(dos命令行);
- java三种技术架构:JAVAEE(企业版)、JAVASE(标准版)、JAVAME(小型版);
- java语言特点:跨平台性(winlinuxmac的JVM,java虚拟机)、可移植性。
(二)java的环境搭建
- JRE:java运行环境;
- JDK:java开发工具包(包括JRE),其中开发工具:编译工具(javac.exe)打包工具(jar.exe)等;
- java platform
(三)java开发体验
- 编写:Demo.java(源文件)
class Demo {}
- 编译:javac编译工具对Demo.java文件编译,当前目录出现Demo.class文件(字节码文件);
- 运行:通过运行工具java.exe对字节码文件进行执行,java Demo。若报NoSuchMethodError:main,因为执行需要一个入口 public static void main(String[] args){},并可在main方法中加入System.out.println("hello java");
(四)配置classpath,JVM查找类文件顺序
- classpath变量值是java类文件的目录,若classpath有分号,则在指定文件找和当前目录下找,若classpath值无分号,可在找指定类文件,不会再当前目录找并也不会运行;若无classpath,则只在当前目录下查找;
- 建议:配置classpath,值结尾处不要加分号,若需访问当前目录加“.”表示;
- path变量是Windows程序文件的目录;
二、JAVA基础语法
(一)关键字
(二)标识符
- 大小写敏感:Java是大小写敏感的,这就意味着标识符Hello与hello是不同的。
- 类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass 。
- 方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
- 源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记Java是大小写敏感的),文件名的后缀为.java。(如果文件名和类名不相同则会导致编译错误)。
- 主方法入口:所有的Java 程序由public static void main(String []args)方法开始执行。
- 所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
- 首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的任何字符组合
- 关键字不能用作标识符
- 标识符是大小写敏感的
- 合法标识符举例:age、$salary、_value、__1_value
- 非法标识符举例:123abc、-salary
(三)注释
- 单行注释,//注释文字
- 多行注释,/* 注释文字*/
- 文档注释,/** 注释文字 */,java特有注释,可以被jdk提供的工具javadoc所解析,生成一套以网页文件形式体现的该程序说明文档。
(四)常量与变量
- 布尔型:true false;
- 八进制:0-8,满8进1,用01开头;
- 十六进制:0-9,A-F满16进1,用0x表示;
- 十进制转二进制,除以2取余数;
- 二进制转十进制,乘以2的幂数;
- 负数二进制:对应的正数二进制取反加1;
- 变量:内存中的一个存储区域,在一堆{}之间有效,格式:数据类型 变量名 = 初始化值;
(五)运算符
- 算数运算符
“+”除字符串相加功能外,还能把非字符串转换成字符串。
- 赋值运算符 =,+=,-=,*=,/=,%=:int a=3; a+=5;等同a=a+5;
- 比较运算符 ==,!=,<,>,<=,>=,instanceof(检查是否为类的对象):“hello” instanceof String,比较运算符的结果都是boolean型;
- 逻辑运算符:&(and与),|(or或false|true true),^(XOR异或true^false true),!(not非 !true false),&&(and短路 false&&true false),||(or短路 false||true true);
- 位运算符(直接对二进制进行运算)
- 三元运算符
(六)程序流程控制
- 判断结构:
- 选择结构:
- 循环结构:
- 循环结构: