1.Java基础知识

目录

第一章:

java的核心优势:

java的三个版本:

JIT:

Java程序的运行机制:

jre:

jdk:

第二章

注释:

标识符:

建议:

标识类名的标识符:

表示方法和变量的标识符:

变量的本质:

变量的三类:

常量:

内存区分为四块:

基本数据类型:

选择数据类型的原则:

整形常量、整型变量:

浮点类型:

字符型:

算术运算符:

关系运算符:

逻辑运算符:

位运算符:

条件运算符:

运算符的优先级:

自动类型转换:

强制类型转换:

简单使用Scanner类获取键盘输入:

第三章

流程控制语句:

if单选择结构与Math类的使用:

                  if else双选择结果:

switch多选择结构:

循环结构:

while:

do-while:

for循环:

无限循环:

嵌套循环:

break:

带标签的break与continue:

语句块:

方法:

 方法的调用:

方法里return的作用:

方法的重载:

递归:


第一章:

java的核心优势:

跨平台/可移植性

java的三个版本:

1.javaSE(Java Standard Edition):标准版,定位于个人计算机上的应用。

2.javaEE(Java Enterprise Edition):企业版,定位于服务器端的应用。

3.javaME(Java Micro Edition):微型版,定位于消费性电子产品的应用上。例如微波炉系统。它与安卓开发与ME是两个完全不同的东西。

ME是SE的内伸,包含J2SE的一部分核心类,也有自己的扩展类,增加了适合微小装置的类库,javax.microedotion.io.*等。

JIT:

java提高运行效率的一个发展技术:JIT(just in time),即时编译技术,将一些“热点”字节码编译成本地机器码,并将结果缓存起来,在需要的时候重新调用。

Java程序的运行机制:

Java首先利用文本编辑器编写java源程序,源文件的后缀是.java,再利用编译器javac将源程序编译成字节码文件,后最是.class,最后利用虚拟机(解释器,java)解释执行。

一个虚拟的用于执行bytecoed字节码的“虚拟计算机”。

jre:

(java runtime environment)包含java虚拟机、库函数、运行java应用程序所必须的文件。

jdk:

(java development kit)包含了jre,以及增加编译器和调试器等用于程序开发的文件。

java安装后的三个重要的目录:

bin:二进制文件所在目录

lib:类目录

src.zip:jdk源码包

第二章

注释:

单行注释://

多行注释:/*   ...   */,多行注释不能嵌套使用。

文档注释:/**   ...   */,后期写项目时,可以生成项目的api,则个在eclips中打   /**   然后回车就可以了。

注释不会出现在字节码文件中。

public class 类名称 {文件名必须与类名一样,一个文件中只能有一个类}

class 类名称 {可有多个类,编译出来后会将多个类编译出不同的文件}。严格上标准中一个文件中只有一个类。

public static void main(String[] args){主方法}

标识符:

使用来给变量、类、方法以及包进行命名的,使用规范:1.标识符必须以字母、下划线、美元符号$开头。2.标识符其他部分可以是字母、下划线、美元符号和数字的任意组合。3.java标识符大小写敏感且长度无限制。4.标识符不可以是java的关键字。

建议:

标识类名的标识符:

每个单词的首字母大写,如:Man,GoodMan

表示方法和变量的标识符:

第一个单词小写,从第二个单词开始首字母大写,称为“驼峰原则”。

变量的本质:

代表一个“可操作的存储空间”,空间位置是确定的,但是里面放置了什么值是不确定的,我们可以通过变量名来访问“对应的存储空间”,从而操作这个存储空间所存储的值。

java是一个强类型语言,每个变量都必须声明其数据类型,变量的数据类型决定了变量占据存储空间的大小。

变量作为程序中最基本的存储单元,其要素包括变量名、变量类型和作用域。变量在使用前必须对其进行声明,,声明后才会为其分配相应长度的存储空间。

变量的三类:

1.局部变量local variable,方法或语句块内部定义的变量,生命周期是从声明位置开始到方法或语句块执行完毕位置。

2.成员变量也叫做实例变量member variable,方法外部、类的内部定义的变量。从属于对象,生命周期伴随对象始终。

3.静态变量,也称之为类变量static variable,使用static定义,从属于类,生命周期伴随类始终,从类加载到类卸载。

常量:

constant,通常指一个固定的值,例如1,2,3,‘a’,'b',true,false等等。在java中通常利用关键字去定义一个常量,常量一旦被初始化之后不能更改其值。final    type   varName  =  varValue;

一般来讲,1,2,3,‘a’,'b',true,false等等这种称之为字面常量,用final定义的称之为符号常量。

内存区分为四块:

1.栈:先进先出,存普通属性,基本数据类型如”int i=1;“这种即局部变量,方法参数等。

2.堆:存地址,对象占的内存,一般为new的对象,但是class的引用在栈上。

3.全局数据区:存static属性。

4.全局代码区:存方法。

基本数据类型:

primitive data type

引用数据类型用来代表对象的地址。基本数据类型不牵扯到内存分配,引用数据类型要开发者为其分配空间。

选择数据类型的原则:

整数就使用int,小数就用double,描述时间日期数字或者表示文件或内存大小使用long,要实现内容传递或编码转换使用byte,实现逻辑控制就用boolean,描述中文就使用char可避免乱码。

整形常量、整型变量:

整形的最大:Integer.MAX.VALUE,最小:Integer.MIN.VALUE,最大值加一等于最小值,最小值减一等于最大值。

浮点类型:

float尾数可以精确到7位。

如果要比较,java.math包下面有两个有用的类,BigInteger与BigDecimal,这两个类可以处理任意长度的数值,BigInteger实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点运算。

字符型:

String就是字符序列。

布尔类型:

运算符:operator

算术运算符:

int res = ++a;与int res = a++的区别,++a是先自增再赋值给res,a++是先赋值,再自增。

关系运算符:

=是赋值,==是比较。

==和!=是所有(基本和引用)数据类型都可以使用的。

> ,>= ,< ,<=仅针对数值类型,即:byte,short,int,long,float,double和char。

逻辑运算符:

位运算符:

字符串连接符就是+号,当加号两边有一个为String,它就变成了字符串连接符。

条件运算符:

运算符的优先级:

自动类型转换:

指的是容量小的数据类型自动转为容量大的数据类型。这里的容量大小指的不是字节大小。

上图虚线标识转换有可能会失去一部分精度。

强制类型转换:

cast,

注意:

操作比较大的数时,特别是整数操作,要留意是否溢出。long类型时最好使用大写的L。在会有溢出的时候,一定要在计算结果前就先转换一个的类型。

简单使用Scanner类获取键盘输入:

第三章

流程控制语句:

流程控制语句时用来控制程序中各语句执行的顺序的语句。它分为三类:1.顺序结构:先执行a,再执行b。2.选择结构:如果。。。,则,,,。3. 循环结构:如果。。。,则再继续,,,。

任何的程序软件,都是由“变量、选择语句、循环语句”组成的。

if单选择结构与Math类的使用:

if else双选择结果:

if else if else 多选择结构:

switch多选择结构:

一般用于多值的判断。

循环结构:

循环结构分为两大类:当型:当boolean条件为true时,反复执行某语句,当boolean为false时才停止循环,例如while与for循环。直到型:先执行某语句,再判断boolean条件,如果为true,再执行某语句,如此反复,直到条件为false时才停止循环,例如do-while循环。

while:

do-while:

while是先判断后执行,do while是先执行后判断。

for循环:

是支持迭代的一种通用结构,是最有效、最灵活的循环结构。

括号中有多个初始化或者条件判断、迭代的话,用逗号隔开。

无限循环:

相当于while(true)

嵌套循环:

在一个循环语句中再嵌套一个或者多个循环。

break:

在任何循环语句的主题部分,均可使用break来控制循环的流程,break用于强行推出循环,不执行循环中剩余的语句。

带标签的break与continue:

goto关键字很早之前就在程序设计语言之中存在,在java中只作为一个保留的关键字,并没有使用它。

语句块:

方法:

一段用来完成特定功能的代码片段,类似于其他语言的函数。

 方法的调用:

方法里return的作用:

结束程序运行与返回值的作用。

方法的重载:

overload,在一个类里面有多个方法的名称相同。重载的方法,实际上是完全不同的方法,只是名称相同而已。

递归:

基本思想就是自己调自己。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值