关于Java的入门知识点(变量类型,标识符,运算操作符,内存模型理解)
ava是面向对象的语言:object oriented progarm oop
类 / 对象
一组蓝图/设计图稿 /拿着蓝图制造出的自行车
Java中间由一个翻译官(虚拟机)
尽管对解释后的字节码性能已经⽐比较满意,但在有些场合下可能需要更更加⾼高效的性能。字节码可以(在运⾏行行时刻)动态的翻译成对应运⾏行行这个应⽤用的特定cpu的机器器码。
public class: 类
HelloWorid类名称: 必须与文件名一致 ( HelloWorld .java )每个单词首字母大写其他小写 后面可以跟数字,但前边不行
函数入口方法:public static void main( Strint[] args )
打印并换行: Sytem.out.println("字符串")
.printt buhuanghang不换行
printf("格式",内容) 按格式打印
format() 和printf一样
Java无关平台的程序
变量的定义;
语法规则;变量类型 变量名称 初始值
1.字面量
2.另一个变量
3.方法的返回值
变量类型;
一基本类型
1..数值类型
整型:
int 4个字节
byte 1
short 2
long 8
c中int long 随平台变化,JAVA中确定
浮点型:
float 4
double 8
字符类型;(不仅仅是一个字母,也可以是汉字)
例如:
String s="中国" 在java 中是字符
s.length=2个字节
char 2个字节(Unicode码点)
2..布尔类型
boolean true/false
二:.yinyong类型
1..数组引用String[] args
类型 数组名
2..类引用
3..接口引用
三:什么是Unicode?
AscII 一个byte是7个bit A-Z
Unicode
中国 \u4e2d \u56fd
GB系列 只识别中文和英文
UTF-8系列 可以识别所有语言
UTF-8
什么是标识符:
1.必须以字母开头(不能 数字,$, ,特殊字符开头)
2.可以跟字母,数字,下换线,美元符
3.长度理论上可以无限长
4.不能用关键字起名字
规范;
1.用中文作为标识符
2.不出现美元符$
3.不出现下换线,除了定义不可变的量
4.变量 (名词)首个单词全小写,后边单词首字母大写后面全小写
int countStudents=10;
5.方法(动词)首个单词全小写,后边单词首字母大写后面全小写
int getName()
6.类名称(名词) 每个 单词首字母大写后面全小写
class HelloWorld{}
java 中不用\n换行 用%n换行
定义方法;
public static 返回值类型 方法名词(形参列表){
}
public static void main(String[] args){
}
public sataic int max(int a,int b){
if(a>b){
return a;
}else{
return b;
}
调用方法:
方法名词
字面量:literal
int a=10;
10 int类型
10L long类型
1.0 double 类型
10F float类型
四种进制的表示:
二进制0b/0B
八进制0开头 010
十进制10
十六进制:0xFF/ 0XFF
科学计数法:SEM
1.0e10
1.0*(10^10)
变量的类型转换:
变量=值
int a=10;
1.如果两边类型一样可以赋值
2.左边的类型比较大
long a=10;隐式转换
左边类型小
int 10=10L; 错误
int 10=(int)10L 大类型转小类型必须发生强制类型转化 /显式类型转换
3.两边没有关系运行时出错
最小值-1变为最大值-2147483648 ---- +2147483647
最大值+1变为最小值
运算符;
1.复制运算符:=
2.算术运算符;+ - * %(取余)
3.+10 正10
-10 负10
4.a++
++a
5.
!布尔类型(一定用在布尔类型上)
6.比较运算符
!=
<
<=
7.三目运算符
布尔类型 ?值1:值2;
值为真:值为假
8.逻辑与或
&& || 注意其短路性
boolean类型 不能是整型
9.instanceof 判断变量是否是指定类型
10 ~按位取反
&按位与
^按位异或
| 按位或
11.
不带符号的移>> <<带符号的移
位移运算符
赋值的内存模型理解:
int a=10;
类型:1.框的大小
2.框中数据是如何摆放的(layout布局)
变量名:
1.主要作用在编译期间
2.用处是通过名称找到框
值:
按值照制定布局放到框中