一:jdk1.8 的安装和环境变量的配置:
1)在www.oracle.com官网上即可下载,下载后就傻瓜式安装,下一步即可,
但注意安装过程中不能有中文路径,必须是全英文的;
2)安装之后便可以配置 path 环境变量 :
安装path环境变量:是在当前目录中找对应的文件,如果找不到,才去配合path路径下去找;
1. 在系统变量->JAVA_HOME
2. 将 jdk 安装目录作为JAVA_HOME变量值
3. 在path将JAVA_HOME的路径引用过来
4. 将 %JAVA_HOME%\bin; 放到path路径的最前面或者最后;
3)安装好之后打开命令控制框 输入 java 和 javac
二:java初体验之hello world 案例开发
1) 在某个盘符下新建一个.txt结尾的文件
2) 编辑文件内容:
class 类名{
public static void main(String[] args){
System. out.println(“hello world”)
}
}
3) 保存内容,将后缀名.txt->.java文件
4) 进入dos控制台,盘符切换,进入 jdk 安装目录里面的bin目录下
5) javac 源文件.java
回车生成字节码文件 类名.class
6) java 字节码文件的前缀
回车输出字符串内容
三:Java基础语法:
给类/接口:
单个单词:,单词首字母大写
多个单词:每个单词首字母大写
变量/方法:
单个单词:字母全部小写
多个单词:第一个单词全部小写,从第二个单词开始,每个首字母大写
常量:
程序的执行中,其值不发生改变的量,一般都大写
包(文件夹)
一般情况: 多级包 com.chen.类
实体类
注释:
单行注释 //
多行注释 /**/
文档注释 /** */
变量使用的注意事项:
1) 定义变量不能重复定义
2) 定义变量不能 数字开头,以及不能是java中的关键字
3) 尽量在一行只定义一个变量(符合编码的风格)
4) 每一句都以 ; 分号表示语句结束
byte,short,char,三者之之间不互相转换,一旦参与运算优先转换 int , long , float , double...
byte a = 5;
byte b = 6;
byte c = byte(a+b); //强制转换会损失精度;
运算符:
算术运算符: + , - , * , / , %(取余数)
+ 的用法:1)可以作为加法参与运算
2)可以作为拼接符,将字符串与其他数据类型的数据拼接起来成为一个新的字符串
3)可以表示一个正整数
扩展的算术运算符: ++ / --
如果++/--单独使用:结论: 无论++/--在数据的前面还是数据的后面,都是自增1或者自减1;
如果++/--参与运算的使用:
1)如果++/--在数据之前参与运算: 先自增1或者自减1,然后在运算(赋值)
2)如果++/--在数据之后参与运算: 先运算(赋值),然后在参与运算!
赋值运算符: =
扩展的赋值运算符: -= , += , *= ,%= ,/=
(将等号左边的值与右边的值进行相对应的运算之后,再将得到的结果赋值给左边的变量)
注意:这里会考一个面试题:short s =1;s = s+1; //s=s+1会报错,因为这里运算后会有一个数据类型提升,会默认为 int 型
应改写为 s = short(s+1);
short s1= 1; s1 += 1; //这里则运行正常,s1 += 1;相当于 s = short(s+1);
隐藏了强制转换数据类型
逻辑运算符:
& :有false则false;左边表达式为false,右边则会继续进行运算
| :有true 则 true
! :有true则false;
^(位异或) :相同则为false,相异则为true;(一个数据被另一个数据位异或两次,值是它本身)
面试题 :将两个数的值进行交换;
int a =1 ,b = 2;
a = a^b;
b = a^b; // a^b^b = a
a = a^b; // a^b^a = b
&& :只有都为true则为true,否则为false;左边表达式为false,右边则不再进行运算,直接输出false,
| | :只有都为false则为false,否则为true ;左边表达式为true,右边则不再进行运算,直接输出true
三元运算符: 数据类型 变量 = (表达式) ? true的结果 :false的结果;
流程控制语句:
1)顺序结构语句
代码从进入main方法开始,依次由上而下按照顺序执行!
2)选择结构语句
if语句:
格式1:if(表达式){
语句;
}
如果语句只有一条,大括号可以省略,但是建议不要省略掉
格式2 :if(表达式){
语句;
}else{
语句;
}
格式三:if(表达式){
语句;
}else if (表达式){
语句;
}else{
语句;
}
switch语句(面试重点):
表达式中的值和case值进行比较,如果选项1值和它一样,执行1,switch语句结束;
否则,就按照这种方式依次和case后面的值进行比较
如果上述都不匹配,就执行default语句格式: switch(表达式){
case 选项1:语句;break;
case 选项2:语句;break;
case 选项3:语句;break;
...
default : 语句;break;
}
面试题 switch后面的表达式可以是什么数据类型:
1)byte,int等基本的数据类型
2)enum(枚举类型): jdk5
3)String(jdk7)
switch语句的注意事项:
1) case后面的值只能是常量
2) 每个case语句中都有一个break,break表示结束switch语句的,遇见break,switch语句结束
那么如果不写break,会出现"case穿透"
3) switch语句的结束条件
a: 遇见break结束
b: 程序默认执行的到末尾
4)default语句可以在switch语句中的任何位置,并且不影响程序的执行;default语句如果是在语句中,
最好不要省略break, 但是如果在switch语句末尾 这个break是可以省略的!
3)循环结构语句for循环语句
while循环语句
do-while循环语句
跳转控制语句:
break
continue
return