一、冯诺依曼体系架构:
二、简单介绍:
1、 JDK(Java Development Kit)
JRE(JavaRuntime Enviroment)
2、public class HelloWorld{
public static void main(String[] args){
System.out.println("你好世界!");
}
}
在cmd中运行时
javac HelloWorld.java
java HelloWorld
Java是面向对象的语言(Object Oriented Progma OOP);涉及到两个概念对象和类
类(class):是一组设计蓝图 例如:自行车的设计稿
对象(object):用蓝图制造出的一组实例 例如:自行车
3、 几类输出:
System.out.println() 打印不换行
System.out.print() 打印输出
System.out.printf("%s",.........) 按格式输出
System.out.format("%s",......) 和printf一样
System.err.println()
三、变量(variable)的定义:
1、语法规则:
变量类型 变量名称;
int a;
2、变量类型 变量名称=初始化的值
(1)字面意思 int a=10;
(2)另一个变量 int b=a;
(3)方法的返回值 int c=max(a,b);
二、变量的类型:
1、基本类型
(1)数值类型
整形:Java整形的默认值为int,若一个数为long ,则表示为10L/10l
byte 一个字节
short 两个字节
int 四个字节
long 八个字节
浮点型:浮点数的默认类型是double,1.0F/1.0f表示float类型
float 四个字节
double 八个字节
字符类型:
char 两个字节(Unicode 码点)
(2)布尔类型(boolean):true/flase
类型转换!!!!
(1)隐式转换:变量的类型相同或者小字节的类型向大字节的类型转换 ->直接转换
(2)显示转换:变量类型不同且大字节的类型向小字节的类型转换 ->强制转换 long a;
int b=(int )a;
2、引用类型(reference type):
(1)数组引用(array reference)
(2)类引用(class reference)
(3)接口引用(interface reference)
四、标识符(包含变量名、方法名、类名)的规定
(1)不能用数字开头 int 中国=10;
(2)可以跟字母、数字、下划线_ 、美元符$
(3)长度理论上可以无限长
(4)不能用关键字
规范!!!!!!:
(1)永远不要中文作为标识符
(2)不要出现美元符
(3)不要出现下划线,除了定义不可变的变量
(4)变量(名词):首个单词全小写,后边首字母大写其余的小写
int countStudents=10;
(5)方法(动词):首个单词全小写,后边首字母大写其余的小写
int getName()
(6)类(名词):每个单词的首字母的大写,其余小写
class HelloWorld{}
五、定义方法
public static 返回值类型 方法名称(形参列表){
}
public static int max(int a,int b){
}
1、方法的调用:
(1)方法名称(实参列表);
(2)变量=方法名称(实参列表);
int a=10;
int b=20;
int c=max(a,b);
六、操作符:
1、赋值运算符:=
a=10; 把右边的值赋给左边
2、算是运算符:+(加) -(减) *(乘) /(除) %(取模)
3、+10、-10
4、自增自减:a=5;
int b=a++; ——>b=5;a=6
int b=++a; ——>b=6;a=6
减法同样适用
5、! (强调,一定作用在布尔类型上)
int a=0; !a;
6、比较运算符
==(相等) !=(不等) >大于 >=大于等于 <小于 <=小于等于
7、三目运算符:
布尔类型?值1:值2;
若布尔类型为真,为值1,反之则为值2
int c=1>2?1:2;
8、逻辑与、逻辑或
条件1 && 条件2
条件1 && 条件2
9、instanceof 判断变量是否是指定类型
10、~(按位取反) &(按位与) ^(按位异或) |(按位或)
11、<< >>
七、赋值的内存模型理解:int a=10;
类型:
1、框的大小
2、框中的数据是如何摆放的(layout布局)
变量名:
1、主要作用在编译期间
2、用处是通过名称找到框
赋值操作:
把值按照指定布局放到框中
补充:int 类型的溢出问题(只有int有此类情况)
int min=Integer.MIN_VALUE(); //返回int取值范围内最小的数值-2^31
int max=Integer.MAX_VALUE(); //返回int取值范围内最大的数值2^31-1
int min=Integer.MIN_VALUE(); //返回int取值范围内最大的数值2^31-1
int max=Integer.MAX_VALUE(); //返回int取值范围内最小的数值-2^31