JAVA基础|基础语法
1.数据类型
基本数据类型包括基本数据类型和引用数据类型
1.1基本数据类型
JAVA语言中,基本数据类型一共有四类八种
整型 :byte,short,int,long
浮点型:float,double
字符型:char
布尔型:boolean
序号 | 数据类型 | 占用存储空间(字节) | 位 | 取值范围 | 默认值 |
1 | byte | 1 | 8 | -2^7^~2^7^-1(-128~127) | 0(byte) |
2 | short | 2 | 16 | -2^15^~2^15^-1(-32768~32767) | 0(short) |
3 | int | 4 | 32 | -2^31^~2^31^-1(-2147483648~2147483647)约21亿 | 0 |
4 | long | 8 | 64 | -2^63^~2^63^-1 | 0L |
5 | float | 4 | 32 | -3.403E38~3.403E38 | 0F |
6 | double | 8 | 64 | -1.798E308~1.798E308 | 0D |
7 | char | 2 | 16 | 0~65535 | null |
8 | boolean | 1 | 8 | false |
2.引用数据类型
接口(interface)
类(class)
数组([])
2.标识符
标识符:标注 识别的 符号。 在程序开发中,我们需要给很多东西命名,那么有一套系列的成体系的命名规则。这个命名规则就是标识符。
三个规则
给类、变量、常量、接口等等起名的时候
不能以数字开头,以字母、_下划线、$美元符号 开头 后跟字母、_下划线、$美元符号 、数字结尾
严格区分大小写 编写类:Ab ab AB
不能是java语言中的关键词
两个标准
见名知意 (起名字的时候能够让人理解是什么) usercontrolmanager
驼峰原则(让单词有大小写)
类: 首字母大写 剩余单词小写,每个单词首字母均大写 UserControlManager
变量:首字母小写 剩余每个单词的首字母大写,其余全部小写 userControlManager
常量:所有字母均大写,单词之间通过_ 分割 ; USER_CONTROL_MANAGER
方法: 首字母小写 剩余每个单词的首字母大写,其余全部小写 userControlManager
包:所有字母小写,单词之间通过.分割 user.control.mamager
一个注意事项
Java采用的字符集合是unicode,所以理论上而言,它可以识别所有字符信息。包括中文。
3.关键字
Java中,可以使用访问修饰符来保护对类、变量、方法和构造方法的访问。Java 支持 4 种不同的访问权限。
1.分类
private : 在同一类内可见。使用对象:变量、方法。 注意:不能修饰类(外部类)
default (即缺省,什么也不写,不使用任何关键字): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。
protected : 对同一包内的类和所有子类可见。使用对象:变量、方法。 注意:不能修饰类(外部类)。
public : 对所有类可见。使用对象:类、接口、变量、方法
2.作用域
修饰符 | 当前类 | 同包 | 子类 | 其他类 |
public | √ | √ | √ | √ |
protected | √ | √ | √ | × |
default | √ | √ | × | × |
private | √ | × | × | × |
4.方法和数组
方法
什么是方法?
方法是通过一个{} 将多行代码统一的组织起来,形成一个功能单元,方便我们能够反复的调用以及使用。
如何定义一个方法
public static void main(String[] args) {
System.out.println("hello");
System.out.println("main method");
// 调用声明的method方法
method();
}
// 定义一个方法
public static void method(){
System.out.println("hello i am method ");
}
定义方法
{public|private|protected|不写} [static] {void|data_type} name([parameters]){
method_statement1;
method_statement2;
................
}
// 现阶段我们定义的方法
public static void name(){
// 程序语句
// .......
}
方法调用
在main方法中通过方法名称直接调用即可
在调用方法的时候 通过类名.方法名(参数列表)
只不过如果你的调用者和被调用者在同一个类中,此时类名是可以省略的
方法名称一定存在,另外一点就是参数列表也需要保证一致
public static void main(String[] args){
// 如果需要调用当前类中声明的方法 在main方法中通过方法名称调用
a();
}
public static void a(){
System.out.println("a");
}
方法的参数列表
定义方法的时候 可以通过在方法声明的位置添加一个变量的声明来获取调用者传递给被调用者的参数
public static void main(String[] args) {
// 通过方法名称调用add方法
add(10);
}
public static void add(int n){ // 形式参数 天线
System.out.println(n);
}
方法的返回值
在某些情况下,被调用者需要将自己的计算机结果返回给调用者,调用者获取到结果之后才能继续完成接下来的逻辑。
数组
数组: 通过 连续的存储空间 存储相同类型元素的 有序 集合。
数组的声明和使用
数组的静态初始化
// 固定写法
// data_type[] names ; 声明
// names = new data_type[]{value1,value2,value3......};
动态初始化的格式:
//数据类型[] 数组名 = new 数据类型[[数组长度];
数组的属性
长度
也称之为数组的容量或者是数组中的元素个数(这三个值是相等的)
int[] ars = new int[]{1,2,3,4,5}
int length = ars.length;
System.out.println("当前数组ars的长度是:"+ars.length);
索引
每个数组元素都存在一个索引(下标),索引位置从0开始。
索引一定是 0<=index<length
数组的最大问题
数组的长度一旦确定,无法修改。
public class Test03 {
public static void main(String[] args) {
int[] ars = new int[]{1,3,4,65};
System.out.println("该数组的长度是:"+ars.length);
// 给当前ars这个变量重新赋值
ars = new int[]{1,3,4,5,6,7,8};
System.out.println("该数组的长度是:"+ars.length);
}
}