第一周总结

一、初识Java

1.Java既属于编译型语言,又属于解释型语言

编译型语言:在程序执行之前,先进行编译,下次运行的时候不需要重新编译

解释型语言:运行时才进行编译,每次运行时都要进行编译,所以速度要比编译型慢

而Java的编译原理是先把Java源码编译成字节码,通过虚拟机把字节码解释成机器码, 然后再执行机器码。通过Java的编译原理和编译型语言的定义及解释型语言的定义可 以看的出来,Java语言既是编译型语言也是解释型语言。

2.Java是如何实现跨平台的

每个平台都有相应的JVM(java虚拟机),通过JVM将字节码进行解释(JVM本身并不具有跨平台性)

3.JDK,JRE,JVM

JDK:Java Development Kit (Java开发工具包)

JRE:Java Runtime Environment (Java运行环境)

JVM:Java Virtual Machine(Java虚拟机)

JDK包含JRE,JRE包含JVM

4.Java运行环境配置

JAVA_HOME:JDK安装目录

PATH:%JAVA_HOME%\bin;

CLASSPATH:.;%JAVA_HOME%\lib; //若配置了classpath,可在任意目录下运行; 若没有配置classpath,则需cd到项目空间下的bin目录运行;运行时,优先classpath, 然后是当前目录

编译命令:javac java源文件

运行命令:java class文件(带包名,不带后缀)

二、Java的基础语法

1.关键字

1、用于类和接口的声明:class, extends, implements, interface

2、包引入和包声明:import, package

3、数据类型:byte, boolean, char, double, int, long, float, short

4、某些数据类型的可选值:flase, ture, null

5、流程控制:break, case, continue, default, do, else, for, if, return, switch, while

6、异常处理:catch, finally, throw, throws, try

7、修饰符:abstract, final, native, private, protected, public, static, synchronilzed, transient, volatitle

8、操作符:instanceof

9、创建对象: new

10、引用:this, supper

11、方法返回类型:void

12、保留字:const, goto

2.标识符

Java中的包、类、方法、参数、变量的名字,可以由任意顺序的大小写字母、数字、下划线(_)、美元符号($)组成,但不能以数字开头,不能是Java中的保留关键字。

3.变量

4.常量

5.注释

1、单行注释

在注释内容前面加“//”,格式为:

代码;  //注释内容

2、多行注释

以斜杠加星号开头,以星号加斜杠结尾。

/*

*注释内容

*/

3、文档注释

以斜杠加两个星号开头,以一个星号加斜杠结束。

/**

*

* @author admin

*

*/

三、数据类型

1.原始类型

a)布尔值 boolean

b)数值

i.整型(默认类型为int)

1.byte(8位)

2.short(16位)

3.int(32位)

4.long(64位)

5.char(16位)

ii.浮点型(默认类型为double)

1.Float(32位)

2.Double(64位)

2.引用类型

a)class(类)

b)interface(接口)

c)enum(枚举)

d)array(数组)

3.Null类型

Java基础数据类型不具有面向对象的特点,但是Java提供了八个包装类,能够把基本数据 类型转化为引用数据类型。JDK5之后,包装器类和基本数据类型之间可以直接转换,称为 自动的装箱拆箱

四、流程控制

1.if...else(可以嵌套)

if(条件){

语句;

}else if(条件){

语句;

}else{

语句;

}

2.Switch(执行到break才会跳出switch,否则会一直执行下去)

switch(条件){

case 条件1:

语句;

case 条件2:

语句;

case 条件3:

语句;

default:

语句;

break;

}

3.While(先判断,再执行)

while(条件){

语句;

}

4.do...while(先执行,再判断)

do{

语句;

}while(条件)

5.for

for(初始条件;循环体;迭代体){

语句;

}

foreach

for(元素类型t 元素变量x : 遍历对象obj){

引用了x的java语句;

}

五、数组

a)声明

i.int[] arr;

ii.int arr[];

b)初始化

i.静态初始化,直接赋值 int[] arr = {1,2,3}

ii.动态初始化 int[] arr = new int[length];

c)length属性,下标

d)常用方法

i.sort();//排序 默认使用快速排序

ii.toString();//转化为字符串

iii.copyOf(arr,length); copyOfRange(arr,brgin,end);//拷贝数组

iv.equals(arr1,arr2)//判断两个数组是否相等

v.fill(arr,value) //填充

e)

六、字符串

a)String

i.声明

1.String str =“hello”;

2.String str = new String();

ii.主要工具类

1.length();//获取字符串长度,返回值为int

2.charAt(2);//获取下标为2处字符的值

3.equals(str2)//判断两个字符串的内容是否相同,返回布尔值,其中equalsIgnoreCase(str2)可以忽略大小写的影响

4.compareTo(str2);//比较两个字符串的大小,返回差值的一个整数

5.startsWith(str)

6.endsWith(str)//判断是否以指定字符串开始结束

7.substring(begin,end)//截取子字符串begin(包含)至end(不包含)

8.indexOf(str1)//第一次出现str1的下标,返回值为int,不存在返回-1,lastIndexOf 用来表示最后一次出现的下标

9.concat(str2)//连接两个字符串

10.replace(oddstr,newstr)//替换字符串

11.split(string)//按指定的字符串进行拆分

12.toLowerCase()toUpperCase()//大小写转化

13.trim()//去除前后空格,trimLeft(),trimRight()去除左边或右边的空格

iii.特点

String是一个对象不是基本类型,属于字符串常量,是不可变对象,一旦创建就不能修改它的值,对于已存在的String对象操作都是创建一个新的String,并赋值新的值

b)StringBuffer

i.声明

StringBuffer sBuffer=new StringBuffer();

ii.主要工具类

1.append(str)//连接字符串

2.intsert(int,string)//在第n位置插入字符串

3.delete(begin,end)//删除子字符串

4.reverse()//字符串反转

iii.特点

字符串变量 加锁 线程安全

c)StringBuilder

i.声明

StringBuilder sBuilder=new StringBuilder();

ii.主要工具类

1.append(str)//连接字符串

2.intsert(int,string)//在第n位置插入字符串

3.delete(begin,end)//删除子字符串

4.reverse()//字符串反转

iii.特点

字符串变量不加锁 线程非安全

你可能感兴趣的:(第一周总结)