java实训第二天7/27

来源:互联网 发布:神机妙算软件安装流程 编辑:程序博客网 时间:2024/05/16 05:23

1.jdk和jre

(a)jdk:java开发工具包,包括编译工具,jre,运行时的类库

常用工具:javadoc工具,javac,java

(b)jre:java运行环境,包括jvm,类库

2.java语言跨平台的原因

java经过编译后产生的字节码需要jvm虚拟机解析运行,
而各个平台都有自己的jvm,用于解析java生成的字节码。

3.java语言最大的特点:面向对象

4:java语言的三个平台

java标准版j2se java5后 改名为 JAVA SE
java企业版 j2eeJAVA EE
java微缩版j2me JAVA ME

5.JVM了解(什么是jvm,有什么特点)

jvm:虚拟出用于运行java程序的设备
职责:就是运行java程序,程序启动时jvm运行,程序停止时jvm终止,一个程序启动一个局jvm。

6.编程规范

(a)编码规范

(1)缩进
(2)标识符命名规范
(b)注释规范
1)文档注释/** 回车
  *
*/
2)单行注释
//ctrl+/
3)临时注释
/* */ ctrl+shift+/ctrl+shift+\

7.配置java开发环境

------------------------------------------------------------------------------------------

1.数据类型

a)数据类型的作用:设置数据在内存中所占的内存大小
b)分类:
基本数据类型:
数值类型:
整形:byte short int long
默认情况 int
浮点型:float double
默认类型 double
字符类型:单个字符 char  使用 '' 包裹 'a'  '0'
布尔类型:boolean仅有两个值 true false
引用数据类型:
接口
数组

2.常用的进制

a)二进制
b)十进制
c)八进制
d)十六进制

3.char类型能否存放一个汉字

char类型可以放一个汉字,char类型以unicode码存放数据
\u0000-\uffff
中文的unicode \u4e00-\u9fa5
4.char在进行运算的时候 是把字符转换为对应的ascii码在计算
A  97
a  65
0  48
5.char类型:
  其值:1.是否是单个字符或中文 'a'  '0' '你'
2.是否是 Unicode的编码  '\u1234'
3.是否一个一个转义字符 '\t'

D:\考勤\2017-07-26.txt


重点:
1.int
2.double
3.char类型中的面试题
a)char 中是否可以存放一个中文
b)char 中可以存放数据的格式
c)char 在运算是转为Ascii码
a 97 
A 65 
0 48
4.类型转换
a)自动转换
byte short char 之间不能转
int--long--float--double
b)强制类型转换:类型要兼容,会出现精度丢失
double m=12.56;
int n=(int)m; //12
===========================
1.运算符:
a)算术运算符:
+ :如果 + 的两边都是数字 进行 加法计算
如果一边为"" + 就表示 链接符号,
-
*
/ 13/5  2
% 13%5  3用于判断能否被一个数整除
根据身份证判读性别
判断一个三位数是否为回文数

输入一个数字 判断是否 为 水仙花数
一个三位数 每一位上数字的立方和=本身

123
1*1*1+2*2*2+3*3*3 == 123

double 类型的数字的 / 和 %
Infinity

double 在去余数的时候 只考虑 整数部分

-12 /4

++
a++
int m=a++;  //int m=a; a=a+1;
int m= ++a; // a=a+1; int m=a;



int a=12;
int b=3;
int c=a++ + b;//运算符的贪婪法则,运算符发现其后的运算符和自己相同
自动组成一对 
c: 15
a:  13
b:  3
int c=a+ (++b);
c: 16
a:  12
b:  4

b)逻辑运算符:
&&
||
!
注意 短路 如果逻辑运算符的左边的表达式结果决定整个表达式的值
那么右边的表达式不在执行
a=true; a=false; a=false;a=true;
b=true; b=true; b=false;b=false;
a&&b 不会 不会
a||b 不会   不会

a=true; a=false; a=false;    a=true;
b=true; b=true; b=false;    b=false;
a&&b truefalse falsefalse;
a||b truetrue   false true
!a falsetrue truefalse
c)赋值运算符
d)比较运算符
== :比较的是变量对应的内存地址
int a=12; //常量池 12 'a' "abc"
int b=12+1;
if(a==b){

}
!=
e)位运算符:操作的是二进制数据
&:10&8  8 
1010
1000
1000
|:10|8  10
1010
1000
1010
^: 10^82
1010
1000
0010
<<:10<<2  m<<n  m*2的n次方
101000
8+32 =40
以最快的方式获取 2的立方 8
2<<2
    >>:m>>n  m/2的n次方  商
10>>4   0
0000
>>>:忽略正负号
注意:
1.算术运算符:
+:注意两边是否有字符串
/:注意数据类型
double 获取的是小数
12.0/3  4.0
10.0/4  2.5
int 
12/5    2
注意 0 
%:获取余数:
int 获取余数
12%5  2 
double 
12.5%7  5.5
正负号
正数 取余数 为正数
负数 取余数 为负数
2.逻辑运算符:短路
3.比较运算符
== :比较的是内存地址
常量池的地址
堆中的地址
4.位运算符: 
1)只能对byte、short int long char 
2)先把两边转为二进制在 计算
3)<<:  2<<2
5.算远运算符(三目运算符)
表达式?值1:值2  就是一个简单的if else

if(表达式){
值1;
}else{
值2;
}


String msg=age>=18?"成年":"未成年";

String msg="";
if(age>=18){
msg="成年";
}else{
msg="未成年";
}
注意:三元运算符中的两个值 数据类型必须统一或可以自动升级
6.优先级:
a)括号
b)前置++ --
c)* / %
d)+ -
e)比较运算符
f)逻辑运算符
g)赋值运算符
h)后置 ++ --
























jdk 不安装的配置方式:
1.复制需要的jdk完整目录到电脑中
2.必须配置环境变量,识别jdk
JAVA_HOME 指向jdk复制后的位置
D:\Program Files\Java\jdk1.7.0_75
把jdk的bin目录添加到path
在其最前面 添加
D:\Program Files\Java\jdk1.7.0_75\bin;

eclipse 必须和jdk的位数相同



int a=12;
int b=a++;  //12

1.交换变量
a)使用第三者变量
b)不允许使用第三者






原创粉丝点击