志在指尖
用双手敲打未来

java的基础语法

1.java言语开展史
·詹姆斯·高斯林
·SUN-(斯坦福大学网络公司)
·1995年5月23日,java言语降生
·1996年1月JDK1.0
·1997年2月JDK2.0
·1998年12月JDK1.2(将java分红J2SE,J2EE,J2ME)
·2000年5月J2SE1.3
·2002年2月J2SE1.4
·2004年10月JDK1.5(改名JavaSE5.0,JavaEE,JavaME)
·2006年12月JavaSE6.0
·2009年04月20日,甲骨文(oracle)74亿美圆收买sun
·2011年7月JavaSE7.0
·2014年3月JavaSE8.0java
2.Java言语跨平台原理
·平台:指的是操作系统(windows,linux,mac)
·跨平台:Java程序能够在恣意操作系统上运转,一次编写四处运转
·原理:完成跨平台需求依赖Java的虚拟机JVM(JavaVirtualMachine)
3.JRE和JDK
JRE(JavaRuntimeEnvironmentjava运转环境)
包括java虚拟机(JVM)和java程序所需的中心类库等,假如想要运转一个开发好的Java程序,计算机中只需装置JRE即可
JDK(JavaDevelpmentKitJava开发工具包)
JDK是提供应Java开发人员运用的,其中包含了java的开发工具,也包括JRE。所以装置了JDK,就不用在单独装置JREl.其中的开发工具:编译工具(java.exe)运转工具(java.exe)等—>运用JDK开发完成的java程序,交给JRE去运转
4.HelloWorld案例
源文件(编写)—->编辑器—->字节码文件—->解释器——>结果
HelloWorld案例编写
·首先定义一个类
-publicclass类名
·在类定义后加上一对大括号
-{}
·在大括号中间添加一个主方(main)法/函数
-publicstaticvoidmain(String[]args){}
·在主办法的大括号中间添加一行输出语句
-system.out.println(“HelloWorld”);
完好代码
publicclassHelloWorld{
publicstaticvoidmain(String[]args){
System.out.println(“HelloWorld”);
}
}
(文件途径:../HelloWorld.java)
HelloWorld案例编辑
cmd中
进入HelloWorld.java文件的目录
输入:
javacHelloWorld.java
停止编译
输入:
javaHelloWorld
停止运转
5.注释
注释:用于解释阐明程序的文字
分类:单行、多行
作用:解释阐明程序,进步程序的阅读性
//这是单行注释
/*
这是多行注释
*/
例子:
//这是一个Helloworld的类
publicclassHelloWorld{
publicstaticvoidmain(String[]args){
/*
这是多行注释
*/
System.out.println(“HelloWorld”);//在控制台输出Hellow
}
}
运转结果
注释内的内容不显现
6.关键字
被java言语赋予了特定含义的单词
特性:
A:组成关键字的字母全部小写
B:常见的代码编辑器对关键字有特殊的颜色标志
关键字含义
abstract:标明类或者成员办法具有笼统属性
asser:t断言,用来停止程序调试
boolean:根本数据类型之一,声明布尔类型的关键字
break:提早跳出一个块
byte:根本数据类型之一,字节类型
case:用在switch语句之中,表示其中的一个分支
catch:用在异常处置中,用来捕捉异常
char:根本数据类型之一,字符类型
class:声明一个类
const:保存关键字,没有详细含义
continue:回到一个块的开端处
default:默许,例如,用在switch语句中,标明一个默许的分支。Java8中也作用于声明接口函数的默许完成
do:用在do-while循环构造中
double:根本数据类型之一,双精度浮点数类型
else:用在条件语句中,标明当条件不成立时的分支
enum:枚举
extends:标明一个类型是另一个类型的子类型。关于类,能够是另一个类或者笼统类;关于接口,能够是另一个接口
final:用来阐明最终属性,标明一个类不能派生出子类,或者成员办法不能被掩盖,或者成员域的值不能被改动,用来定义常量
finally:用于处置异常状况,用来声明一个根本肯定会被执行到的语句块
float:根本数据类型之一,单精度浮点数类型
for:一种循环构造的引导词
goto:保存关键字,没有详细含义
if:条件语句的引导词
implements:标明一个类完成了给定的接口
import:标明要访问指定的类或包
instanceof:用来测试一个对象能否是指定类型的实例对象
int:根本数据类型之一,整数类型
interface:接口
long:根本数据类型之一,长整数类型
native:用来声明一个办法是由与计算机相关的言语(如C/C++/FORTRAN言语)完成的
new:用来创立新实例对象
package:包
private:一种访问控制方式:私用形式
protected:一种访问控制方式:维护形式
public:一种访问控制方式:共用形式
return:从成员办法中返回数据
short:根本数据类型之一,短整数类型
static:标明具有静态属性
strictfp:用来声明FP_strict(单精度或双精度浮点数)表达式遵照IEEE754算术标准
super:标明当前对象的父类型的援用或者父类型的结构办法
switch:分支语句构造的引导词
synchronized:标明一段代码需求同步执行
this:指向当前实例对象的援用
throw:抛出一个异常
throws:声明在当前定义的成员办法中一切需求抛出的异常
transient:声明不用序列化的成员域
try:尝试一个可能抛出异常的程序块
void:声明当前成员办法没有返回值
volatile:标明两个或者多个变量必需同步地发作变化
while:用在循环构造中
7.常量
在程序的执行过程中,其值不能够发作改动的量
常量分类:
A:字符串常量”HelloWorld”
B:整数常量12,-23
C:小数常量12.23
D:字符常量’a’,’e’
E:布尔常量true,false
F:空常量null
例子:
publicclasschangliang{
publicstaticvoidmain(String[]args){
//字符串常量
System.out.println(“HelloWold”);
//整数常量
System.out.println(12);
System.out.println(-23);
//小数常量
System.out.println(12.23);
//字符常量
System.out.println(‘a’);
System.out.println(‘0′);
//布尔常量
System.out.println(true);
System.out.println(false);
}
}
运转结果:
8.变量
变量:是内存中的一小块区域,在程序的执行过程中,其值能够在一定范围内发作改动
组成:
A:对区域有限定——>用数据类型来限定
B:必需对区域给一个称号—–>变量名
C:区域必需内必需有内容——>初始化值
定义格式:
数据类型变量名=初始化值
9.数据变量
数据类型:Java是一种强类型言语,针对每一种数据都给出明白的数据类型。
数据类型分类:
A:整数占用字节数
byte1
short2
int4
long8
B:浮点数
float4
double8
C:字符
char2
D:布尔
boolean1
留意:
A:整数默许是int类型,浮点数默许是double类型
B:定义long类型数据的时分,要加L或者l,倡议加L定义float类型的时分要加F或者f,倡议加F
例子:
/*
变量的定义格式:
数据类型变量名=初始化值
数据类型:
byte,short,long,float,double,boolean
留意:
定义long类型的变量时,最好直接加L
定义float类型的变量时,最好直接加F
*/
publicclassVariableDemo{
publicstaticvoidmain(String[]args){
//定义byte类型的变量
byteb=10;
System.out.println(10);
System.out.println(b);
//定义short类型的变量
shorts=100;
System.out.println(s);
//定义int类型的变量
inti=1000;
System.out.println(i);
//定义long类型的变量
longl=10000000000000L;
System.out.println(l);
//定义float类型的变量
floatf=12.34F;
System.out.println(f);
//定义char类型的变量
charc=’a’;
System.out.println(c);
//定义boolean类型的变量
booleanbb=true;
System.out.println(bb);
}
}
运转结果:
例子2:
/*
变量定义的留意事项:
A:变量未赋值,不能直接运用
B:变量只在它所属的范围内有效
变量属于它所在的那块大括
C:一行上能够定义多个变量,但不倡议
*/
publicclassVariableDemo2{
publicstaticvoidmain(String[]args){
//定义一个变量
inta=10;
System.out.println(a);
intb;
//System.out.println(b);//—-这里未赋值前运用变量,是错误的
b=20;
System.out.println(b);
{
//代码块
intc=30;
System.out.println(c);
}
//System.out.println(c);//—–这里的c是不存在的,由于变量只在它所属的范围内有效
/*intaa,bb;
aa=10;
bb=20;
System.out.println(aa);
System.out.println(bb);
//但是不倡议这么写
*/
//这么写比上面的写法明晰,和标准
intaa=10;
intbb=20;
System.out.println(aa);
System.out.println(bb);
}
}
运转结果:
10.标识符
标识符:就是用来给包,类,办法,变量起名字的符号
组成规则:
A:unicode字符:
数字字符,英文大小写字母,汉字(不倡议运用)
B:下划线_
C:美圆符号$
留意事项:
A:不能以数字开头
B:不用以java中的关键字命名
常见命名规则:
A:根本请求—–>见名知意
B:常见的命名
a,包(其实是文件夹,用于对类停止管理)
全部小写,多级包.隔开
b,类
一个单词首字母大写eg:Student,Car
多个单词每个单词的首字符大写eg:HelloWorld
c,办法和变量
一个单词首字母小写eg:age,show()
多个单词组成从第二个单词开端每个首字母大写eg:maxAge,getAge()
11.类型转换
当数据类型不一样时,将会发作类型转换
自动类型转换(隐式)
1.特性:代码不需求停止特殊处置,自动转换
2.规则:数据范围从下到大
例子:
publicclassDataTypeDemo{
publicstaticvoidmain(String[]args){
System.out.println(1024);//这就是一个整数,默许就是int类型
System.out.println(3.14);//这就是一个浮点数,默许就是double类型
//左边是long类型,右边是默许的int类型,左右不一样
//一个等号代表赋值,将右侧的int常量,交给左侧的long变量停止存储
//这一行代码发作了自动类型转换
longnum1=100;
System.out.println(num1);//100
//左侧是double类型,右侧是float类型,左右不一样
//float—->double,契合从小到大的规则
//也发作了自动类型转换
doublenum2=2.5F;
System.out.println(num2);//2.5
//左侧是float类型,右侧是long类型,左右不一样
//long—>float,范围是float更大一些,契合从小到大的规则
//也发作了自动类型转换
floatnum3=30L;
System.out.println(num3);
}
}
运转结果:
强迫类型转换(显式)
1.特性:代码需求停止特殊的格式处置,不能自动完成
2.格式:范围小的类型范围小的变量名=(范围小的类型)本来范围大的类型
留意事项:
1.强迫类型转换普通不引荐运用,由于有可能发作精度损失、数据溢出
2.byte/short/char这三品种型都能够发作数学运算,例如加法‘+’
3.byte/short/char这三品种型在运算的时分,都会被首先提升成int类型,再停止运算
4.boolean类型不能发作数据类型转换
例子:
publicclassDataTypeDemo2{
publicstaticvoidmain(String[]args){
//左边是int类型,右边是long类型,不一样
//long–>int,不是从小到大
//不能发作强迫类型转换
//格式:范围小的类型范围小的变量名=(范围小的类型)本来范围大的类型
intnum=(int)100L;
System.out.println(num);
//long强迫转换成int类型
intnum2=(int)6000000000L;
System.out.println(num2);//1705032704—->数据溢出
//double—>int,强迫类型转换
intnum3=(int)3.99;
System.out.println(num3);//3—–>精度损失,这不是四舍五入,而是一切的小数位被舍
//弃
charzifu1=’A’;//这是一个字符变量,里面是大写字母A
System.out.println(zifu1+1);//66,也就是大写字母A也被当做65停止运算
//计算机的底层会用一个数字(二进制)来表示字符A,也就是65
//一旦char类型停止数学运算,那么字符会依照一定的规则翻译成一个数字
bytenum4=40;//留意:右侧的数值大小不能超越右侧的类型范围
bytenum5=50;
//byte+byte—->int+int—>int
intresult1=num4+num5;
System.out.println(result1);
shortnum6=60;
//byte+short—->int+int—>int
//int强迫转换成short,留意必需逻辑上真实大小没有超越short范围
shortresult2=(short)(num4+num6);
System.out.println(result2);
}
}
运转结果:
12.ASCII码表
数字和字符对照关系表(编码表):
ASCII码表:AmericanStandardcodeforInformationInterchage-美国信息交流规范代码表
Unincode码表:也是数字和符号的对照关系,开通0-127局部和ASCII码表一样,但从128开端包含更多字符
48-‘0’
65-‘A’
97-‘a’
例子:
publicclassDataCharDemo{
publicstaticvoidmain(String[]args){
charzifu1=’1′;
System.out.println(zifu1+0);//49
charzifu2=’A’;//其实底层保管的是65数字
charzifu3=’c’;
//左侧是int类型,右边是char类型
//char–>int,契合从小到大
//发作自动类型转换
intnum=zifu3;
System.out.println(num);
charzifu4=’中’;//正确写法
System.out.println(zifu4+0);//20013
}
}

未经允许不得转载:IT技术网站 » java的基础语法
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载