Java基础语法
Java基础01:注释
注释
-
平常我们编写代码,在代码量比较少的时候,我们还可以看懂自己写的,但是当项目结构一旦复杂起来,我们就需要用到注释了。
-
注释并不会被执行,是给我们写代码的人看的
-
书写注释是一个非常好的习惯BAT
-
平时写代码一定要注意规范。
-
Java中的注释有三种
- 单行注释
- 多行注释
- 文档注释
Java基础02:标识符和关键字
标识符
-
关键字
关键字的定义和特点
>定义:被Java语言赋予了特殊含义,用作专门用途的字符串(单词)
>特点:关键字中所有字母为小写
用于定义数据类型的关键字 class定义类 interface enum byte short int long float double char boolean void没有返回值 同于定义数据类型值的关键字 true false null 用于定义流程控制的关键字 if else switch case default while do for break continue return
关键字:就是在Java语言编程的时候,在关键的地方使用的单词,体现关键的地方的含义,这些单词都是特有的,事先定义好的
用于定义访问权限修饰符的关键字 | ||||
---|---|---|---|---|
private | protected | public:公共的,公有的 | ||
用于定义类,函数,变量修饰符的关键字 | ||||
abstract | final | static:静态的 | synchronized | |
用于定义类与类之间关系的关键字 | ||||
extends | implements | |||
用于定义建立实例及引用实例,判断实例的关键字 | ||||
new | this | super | instanceof | |
用于异常处理的关键字 | ||||
try | catch | finally | throw | throws |
用于包的关键字 | ||||
package | Import | |||
其他修饰符关键字 | ||||
native | strictfp | transient | volatile | assert |
- Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。
标识符注意点
-
所有标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
-
首字母之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的任何字符组合
-
不能使用关键字作为变量名或方法名
-
标识符是大小写敏感的
-
合法标识符举例:
age、$salary、_value、_1_value
-
非法标识符举例:
123abc、-salary、#abc
- 可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音,很Low
public class HelloWorld {
public static void main(String[] args){
System.out.println("Hello World");//单行注释:可以注释一行文字
String teacher = "冷光";
String Ahello = "LengGuang";
String hello = "Lengguang";
String $hello = "Lengguang";
String _hello = "Lengguang";
String 王者荣耀 = "百星王者";
//String 王者荣耀 = "倔强青铜";
System.out.print(王者荣耀);
//大小写十分敏感
String Man = "Lengguang";
String man = "Lengguang";//这两个man是完全不一样的东西
// String class = "LengGuang";不能使用关键字作为变量名或者方法名
// String _#hello = "Lengguang";正常情况下某些特殊的符号是用作与标识符里
// String 1hello = "Lengguang";
// String #hello = "Lengguang";
// String *hello = "Lengguang";
}
}
/*
多行注释:可以注释一段文字
1
2
3
4
5
*/
//JavaDOC:文档注释
/**
* 文档注释
* @Author 作者
*/
标识符:Java对各种变量、方法和类等要素命名时使用的字符序列称为标识符;
凡是自己可以起名字的地方都叫标识符
定义合法标识符规则:由26个英文字母大小写,0-9,_或$组成。
数字不可以开头。
不可以单独使用关键字和保留字,但能包含关键字和保留字。(比如,类名不能直接使用class,可以是class1)
Java中严格区分大小写,长度无限制。
标识符不能包含空格
注意:在起名字时,为了提高阅读性,要尽量有意义,“见名知意”。
Java中的名称命名规范
Java中的名称命名规范:
包名:多单词组成时所有字母都小写:xxxyyyzzz
类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ
Java基础03:数据类型讲解
强类型语言
- 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用(优:安全性高 缺:速度慢)
弱类型语言
- 要求变量的使用可以不符合规定
Java的数据类型分为两大类
- 基本类型(primitive type)
- 引用类型(reference type)
public class Demo02 {
public static void main(String[] args){
//八大基本数据类型
//整数
int num1 = 1000000000;//最常用
byte num2 = 20;
short num3 = 30;
long num = 30l;//long类型要在数字后面加个l
//小数,浮点数
float num5 = 0.12f;//float类型要在数字后面加个f
double num6 = 3.14159265358979328462643;
//字符
char name = '冷';
//字符串,String不是关键字,它是一个类
//String name2 = "冷光";
//Boolean(布尔值)类型:是非
boolean flag = true;
//boolean flag = false;
// String a = "10";//String:字符串的意思
// int num = 10;
// System.out.println(a);
// System.out.println(num);
}
}
什么是字节
-
位(bit):是计算机 内部数据 储存的最小单位,11001100是一个八位二进制数。
-
字节(byte):是计算机中 数据处理 的基本单位,习惯上用大写 B 来表示。
-
1B(bute,字节)= 8bit(位)
-
字符:是指计算机中使用的字母、数字、字和符号
-
1bit表示1位
-
1Byte表示一个字节 1B=8b。
-
1024B=1KB
-
1024KB=1M
-
1024M=1G
对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间。
变量的类型:声明的变量的数据类型就是变量的类型
数据类型:基本数据类型;引用数据类型
基本数据类型:数值型:包括整点类型(byte,short,int,long) 就是不带小数点的数据;浮点类型(float,double) 就是带小数点的数据
字符型(char) 什么是字符,比如A B C 加号减号乘号都属于字符类型
布尔型(boolean) 布尔型是啥,就是是或者否这种类型
引用数据类型:类(class) String字符串在这里
接口(interface)
数组([])
在Java中,数据类型分为基本数据类型和引用数据类型,其中基本数据类型有8种,除了这8种之外其他所有的数据类型都是引用数据类型
整数类型:byte、short、int、long
l Java各整数类型有固定的表数范围和字段长度,不收具体OS的影响,以保证Java程序的可移植性
l Java的整数常量默认为int型,声明long型常量须后加‘I’或‘L
类型 占用存储空间 表述范围 byte 1字节=8bit -128~127 short 2字节 -215~215-1 int 4字节 -231~231-1 long 8节字 -263~263-1 比如byte的范围-128到127之间,声明byte类型变量的时候赋值不能超过这个范围,给byte类型变量赋值时不能超过这个范围。
bit是什么单位? 比如二进制0100110 一位数是1bit 这个就是7bit。
long的赋值要求与byte,int,short不一样,比如byte b = 126;int i = 1;short s = 1;但是long不一样,它是long l = 3l(这个long类型变量赋值时要在赋予的值后面加上一个字母l(小写的L))
浮点类型:float、double
l 与整数类型类似,Java浮点类型也有固定的表数范围和字段长度,不受具体OS的影响。
l Java的浮点型常量默认为double型,声明floa型常量,须后加‘f’或‘F’。就是比如floa = 1.22,这样是错误的,需要float = 1.22f或者1.22F(需要在赋值的值加一个f或者F)。与double声明不一样。
l 浮点型常量有两种表示形式:
Ø 十进制数形式:如5.12 512.0f .512(必须要有小数点)
Ø 科学计数法形式:如:5.12e2 512E2 100E-2
类型 占用存储空间 表述范围 精度 单精度float 4字节 -2128~2128 7位有效数字 双精度double 8字节 –21024~21024 16位有效数字 字符类型:char
字符:用英文的单引号(‘’)括起来的单个的字母、数字、符号。
比如:char c1 = ‘a’ char c2 = ‘1’ char c3 = ‘%’
Java中还允许使用转义字符‘\’来将其后的字符转变为特殊字符型常量。例如:char c3 = ‘\n’;//‘\n’表示换行符 还有例如我想定义一个单引号字符char c4 = ‘‘’,这样是不对的,需要给它加斜杠\, 这个斜杠就会让程序认为这个中间是一个单引号字符,而不是外面的单引号括号,这个叫做转义。
转义字符 说明 \b 退格符 \n 换行符 \r 回车符 \t 制表符 \’’ 双引号 \’ 单引号 \ 反斜线 Char类型是可以进行运算的。因为它都对应有Unicode码。
布尔类型:boolean
l Boolean类型适用于逻辑运算,一般用于程序流程控制:
Ø If条件控制语句;
Ø while循环控制语句;
Ø do-while循环控制语句;
Ø for循环控制语句;
l boolean类型数据只允许取值true和false,无null。
Ø 不可以。或非0的整数替代false和true,这点和C语言不同。怎么写呢,比如(boolean b1 = teue或者boolean b2 = false)
byte short int long float double char boolean,8中基本数据类型
引用类型:String
l 值null可以赋值给任何引用类型(类、接口、数组)的变量,用以表示这个引用类型变量中保存的地址为空。
l String类属于引用类型,可用null赋值
l String类是一个典型的不可变类,String对象创建出来就不可能被改变。创建出的字符串将存放在数据区,保证每个字符串常量只有一个,不会产生多个副本。
String s0 = “hello”;
String s1 = “hello”;
String s2 = “he”+“ll”+“o”;
String类型是用来干啥的,它是用来接受字符串的
字符串是什么?字符串?就是由0到多个字母数字符号共同组成的一个串,这个串要用英文双引号括起来
凡是引用类型,都可以用null(空)作为值,也就是说可以在初始化的时候赋值为null
String是引用类型,也就是说可以使用null作为值
String的值是不可变的(比如int i0 = 1 int i1 = 1 以上这种会在内存中存储2个1的值。String s0 = “hello” String s1 = “hello” 在这种情况下String不会在内存中存在两个“hello”值的存在,只存在一个,然后变量名会去引用它们其中一个“hello”;
假设“hello”的内存地址xxxx,当我声明s0变量时给s0赋值“hello”,实际上让s0变量引用“hello”的内存地址xxxx;当我们再声明变量s1也赋值“hello”的时候实际上也是直接把已经存在的“hello”的内存地址给s1引用)
String可以多级拼接 比如:String s1 = “hello”;,那么多级拼接例如String s2 = “he” + “ll” + “o”;二者的输出结果是一致的。