Java基础学习(一)

开发工具
A:普通的记事本
B:EditPlus高级记事本
C:Eclipse和MyEclipse这样的IDE(集成开发工具)工具
开发流程
class Demo{
public static void main(String[] args){
System.out.println(“Hello World”);
}
}
A:java语言的基本组成部分是类,我们用class关键字来表示。
B:类要被使用,所以给它起个名字Demo。这个名字可以随便起。(不要用中文或者全数字)
C:Exception in thread “main” java.lang.NoSuchMethodError: main
如果这个类想要独立运行,必须有main函数。否则,就会报错。
D:如果想在控制台输出一些内容,那么就是用打印语句
System.out.println(“随便写”); //会把()里面的内容输出到控制台
E:用javac命令编译源文件,基本格式
**javac 带后缀名的文件名
F:用java命令运行java字节码文件(class文件),基本格式
**java 不带后缀名的类名
练习:在控制台输出你中文名字的拼音
编写源代码–javac进行编译–java进行执行。
注意:如果文件夹选项将文件扩展名隐藏,会出现文件未找到异常

classpath环境变量
(1)classpath是我们java的类文件目录的环境变量。
A:执行java Demo命令,就会到classpath中去找Demo.class是否存在。
B:如果你配置了classpath,肯定在classpath中找,如果没有,报错。
C:如果你配置classpath的时候,后面加了分号,这个时候,它首先在classpath下面找,如果没有,在到当前目录下找,再没有,报错。建议:classpath不要加分号。
D:没有配置classpath,那么只在当前路径下找。
注意:最后面不要加";",如果要当前目录,可以这么做——set classpath=.;E:\xxxxxx
六、环境变量path和classpath的作用是什么?
path变量是windows程序文件的目录,作用是指定DOS命令行下命令的路径。举例:在DOS命令行下面执行命令:javac,编译程序时,它会到path变量所指定的路径中查找看是否能找到相应的命令程序。
classpath变量值是java类文件的目录,作用是指定类搜索路径。 JVM就是通过classpath来寻找该类的字节码文件的。

关键字
(1)定义:被Java语言赋予了特殊含义的单词
(2)特点:关键字中所有字母都为小写
(3)goto和const虽然从未使用,但也作为Java关键字保留。

标识符
1、定义
简单说就是起名字。
A:Java 语言中,对各种变量、方法和类等要素命名时使用的字符序列称为标识符。
2、标识符的规则
A:由26个英文字母大小写,数 字:0-9 符号:_ $ 组成。
B:不能以数字开头。
C:不能与关键字重名。
注意:java语言严格区分大小写。
3、Java中的名称规范
见名知意:看见名字知道意思
驼峰命名
A:包 其实就是文件夹
**全部小写 xxx.yyy.zzz
**www.baidu.com com.baidu.www
**www.itcast.cn cn.itcast.www
B:类或者接口
**如果由一个单词组成,首字母大写。例如 Demo
**如果由多个单词组成,每个单词的数字母大写。例如 HelloWorld
C:变量和函数
**如果由一个单词组成,全部小写。例如 name
**如果由多个单词组成,第一个单词的数字母小写,其后每个单词的数字母大写。例如 getAge
**变量名是名称,函数名是动词+名称
D:常量
**如果由一个单词组成,全部大写。例如 MONEY
**如果由多个单词组成,每个单词大学,然后用_连接。例如 BANK_MONEY
注释
1、定义
用于对程序进行说明的文字,就可以看成是注释。
2、注释的格式
A:单行注释
**举例://我们好
B:多行注释
*举例:
/

我们都是
好孩子
*/
C:文档注释
举例:
/

@author itcast
@version V1.0
/
3、注释的用途
A:解释说明程序,给人看的。
B:用于调试程序。
注意:A-单行可以嵌套单行注释,也可以嵌套多行注释;
B-多行可以嵌套单行注释,不能嵌套多行注释;
C-文档注释可以嵌套单行注释,不能嵌套多行注释。

常量
(1)在程序的运行过程中,其值是不能改变的量。
(2)常量的分类
A:整数常量 10,-10
B:小数常量 12.5
C:布尔常量 true,false
变量
(1)在程序的运行过程中,其值是可以改变的量。
A:是内存中的一小块存储区域。
B:用于存储数据。
(2)声明变量的格式:
A:数据类型 变量名 = 初始化值;
**byte b = 10;
**System.out.println(b);
B:数据类型 变量名;
变量名 = 初始化值;
使用变量
**byte b;
**b = 20;
**System.out.println(b);
(3)好处:该空间可以重复使用。
(4)什么时候使用变量呢?当要使用的数据是不确定的时候。
数据类型
1、分类
A:基本数据类型
B:引用类型(类,接口,数组)
2、基本数据类型
4类8种,区别在于他们在内存中的存储空间大小不一样。
A:整数
**字节 byte 占1个字节
**短整型 short 占2个字节
**整型 int 占4个字节
**长整型 long 占8个字节 其后跟L或者l标示
B:浮点数
**单精度 float 占4个字节 其后跟F或者f标示
**双精度 double 占8个字节
C:字符
**char 占2个字节
D:布尔
**boolean 占1个字节 true,false
注意:整型默认是int;浮点型默认是double。
3、数据类型的转换
A:数据参与运算
**参与运算的数据类型要一致。
B:转换规则
**布尔型不能参与运算。
整形,字符型,浮点型的数据在混合运算中相互转换,转换时遵循以下原则:
**:容量小的类型默认转换为容量大的数据类型;数据类型按容量大小排序为:
byte,short,char->int->long->float->double
byte,short,char之间不会互相转换,他们三者在计算时首先会转换为int类型
**:容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,但可能造成精度降低或溢出;使用时要格外注意。
**:有多种类型的数据混合运算时,系统首先自动的将所有数据转换成容量最大的那一种数据类型,然后再进行计算。
运算符
1、算数运算符 +,-,
,/,%,++,- -
A:%
**左边小于右边,结果是左边
**左边等于右边,结果是0
**左边大于右边,结果是余数
**余数的正负,取决于左边的正负
**应用:%2 (结果是0,1)
B:++,–
**单独使用,放在操作数前后结果一样。 a++;++a;
**参与操作(运算,赋值,打印)时,放在操作数的前面,数据本身改变,再参与操作。
int a = 12; b = ++a; //a=13,b=13;
**参与操作(运算,赋值,打印)时,放在操作数的后面,数据先进行临时存储,数据本身改变,最后将存储的数据进行赋值。
int a = 12; b = a++; //a=13,b=12;
C:+
**正号
**加法运算符
**字符串连接符
***“hello”+‘A’+1 结果是helloA1
**‘A’+1+“hello” 结果是66hello
2、赋值运算符 =,+=,-=,
=,/=,%=
A:int x = 3;//把3赋值给int类型变量x
B:x += 3; //x = x + 3; 把左边和右边相加赋给左边。
C:左边必须是变量。
D:面试题
short s = 2;
s = s + 2;
s += 2; //+= 有一个自动强制转换的过程
哪一行会报错?为什么?
3、关系运算符 ,!=,>,>=,<,<=
A:比较运算符的结果都是boolean型,也就是要么是true,要么是false。
**System.out.println(3
3); 结果是true
*System.out.println(3!=3); 结果是false
4、逻辑运算符 &,|,^,!,&&,||
逻辑运算符用于连接boolean类型的表达式
/

&运算符:与
左边 右边 结果
true true true
false true false
true false false
false false false
简单的说:有false则false。
/
/

^运算符:异或
左边 右边 结果
true true false
false true true
true false true
false false false
简单的说:相同则false,不同则true。
/
/

&&:短路与
&:与
区别:&&是左边为false了,右边就不操作了。
&左边是false,右边还得继续操作。
/
5、三元运算符 (??
A:(条件表达式)?表达式1:表达式2;
**如果条件表达式为true,运算后的结果是表达式1;
**如果条件表达式为false,运算后的结果是表达式2;
B:表达式:用运算符连接起来的式子就叫表达式
**算术表达式 a+b
**赋值表达式 a+=2;
**关系表达式 (a+b+c) > (a+b)
**逻辑表达式 (a<b) || (c>d);
**三元运算符 100>200?(300>200?100:200):200; 结果是:200
C:特点:运算完后,肯定有结果。
6、位运算符 &,|,^,~,>>,>>>,<<
位运算,要求我们先把数据转换成二进制。
A:System.out.println(4 & 3);
B:System.out.println(4 | 3);
C:System.out.println(4 ^ 3);
**一个数对同一个数异或两次,该数不变。
**应用:加密。
D:System.out.println(~4);
E:<< 就是将左边的操作数在内存中的二进制数据左移右边操作数指定的位数,
右边被移空的部分补0。相当于乘与2的移位数次幂
2<<4-----2
2^4
F:>> 右移稍微复杂一点,如果最高位是0,左边被移空的位就填入0;如果最高位是1,左边被移空的位就填入1。相当于除以2的移位数次幂
G:>>> 无论最高位是1还是0,左边被移空的高位都填入0。
**讲一个应用。通过10进制获取十六进制的数。
***1&1=1 0&1=0 发现,任何数和1做位与运算,结果不变。
通过此规律,我们就可以取得任意二进制的多少位
***num = num >>> 4;
num & 15
取得倒数第二个四位。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值