Java

java特点

1简单(java语法是c++语法的一个纯净版本)

2可移植性(一次编译到处运行)

3面向对象

4分布式(java把打开套接字连接等繁琐的网络任务变得容易)

5健壮性(java编译器会监察处很多其他语言在运行时刻才显示出来的错误;

java采用的指针模型可以消除重写内存和数据崩溃的可能)

6多线程(多线程编程的简单性是java成为流行的服务器端开发语言的主要原因)

7安全(用java可以构建防病毒和防篡改的系统)

8动态(java可随意增加新的方法以及实例变量,而客户端却不需做任何的更改)

9体系结构中立(字节码与计算机体系结构无关,只要存在运行时系统,可在多种处理器上执行)

 

 

java的运行原理

1编译:*.java文件-------->*.class文件

2运行:*.class文件---->加载----->JVM(java虚拟机)

 

 

 

JDK

JDK是整个java的核心,包括了Java运行环境,一堆java工具和java的

基础类库

 

基本数据类型:决定了内存空间的大小以及内存空间所存放的指的类型的限制

byte

short

int

long

float

double

char

boolean

注:

1char是无符号的16位整数,字面值必须用单引号括起来

2String是类,非原始数据类型,本质上不属于基本数据类型,

属于复杂类型

3长整型数字有一个后缀L,八进制前缀为0,十六进制前缀为0x“”

4默认整数类型为int,默认浮点类型为double

5float数据类型必须有一个后缀“f”

6在java中的编码都是unicode编码,长度都是以16bit作为单位的,不分中英文

7String,StringBuffer,StringBuilder的区别

1String:不可变字符串,在大量字符串进行连接时不使用String

2StringBuffer:java5的可变字符串,线程安全

3StringBuilder:线程不安全,性能高,没有多线程的情况下进行大量字符串连接时使用

 

内存的逻辑分区

1栈区:满足first in last out的分配原则---->通常存放局部变量(在方法内部定义的变量)

2堆区:自由存储区

c/c++:动态分配的内存,指针变量

java:对象

3代码区:专门用于存放函数的区域

函数指针:函数在代码区当中的地址

指针函数:函数返回值为指针类型的函数 

4静态,常量存储区

 

命名规则

1类/接口名:单个单词的首字母大写,复合词则每个单词的首字母都大写;

2方法、变量名:第一个单词首字母小写,其余单词的瘦子们大写

3常量名称:全部字母大写,单词间用‘_’连接

4包名:全部字母小写

 

第三章表达式与流程控制

1变量和作用域

1)局部变量

范围:定义在一个方法内部的变量

作用域:其作用域为所在代码块,也成为临时变量、栈变量

生命周期:从创建开始到方法结束为止

特点:在使用前必须对其进行初始化

2)实例变量

范围:定义在一个类内部但不在方法中的变量

作用域:其作用域为整个类,能够被操作的范围是类的内部

生命周期:对象被创建的时候开始,对象呗垃圾回收的时间结束

特点:如未定义其初值,系统会自动对实例变量进行默认初始化,使用之前必须创建类的实例

每一个对象的实例变量的值都是相互独立的

一律存放在堆中

 

 

注意:1局部变量要先赋值,在进行运算,而实例变量均已经赋初值

这是局部变量和实例变量的一大区别

2局部变量不允许范围内定义两个同名变量。实例变量和局部变量允许命名 冲突

 

 

类型(造型)转换

1分类:隐式转换:在Java中,低精度向高精度转换是隐形的,称为隐式转换,

转换时不用任何说明就一定能转换成功

 

显示转换:在java中,(高精度向低精度的转换即宽类型向窄类型的转换)

是显示的,称为显示转换,转换时必须对其进行强制性转换说明才能转换成功

2原则:在类型转换的时候保证数据的完整性

3基本类型数据之间的转换

1byte--short--int--long

2char--int--float

3float--double

4long--float

5long--double

6int--double

 

switch内数据类型为child类型

posted @ 2018-10-26 11:17  wangfujia11  阅读(152)  评论(0编辑  收藏  举报