JAVA基础

这篇博客详细讲解了JAVA的基础知识,包括JDK和JRE的区别,基本数据类型,访问修饰符,自动装箱与拆箱。深入探讨了String、Integer对象的特性和比较,集合框架如ArrayList、LinkedList和HashMap的操作,异常处理,反射机制,多线程概念及synchronized用法,以及面向对象设计原则。此外,还涵盖了构造方法、重载和重写、抽象类与接口等内容,是学习JAVA基础的全面指南。
摘要由CSDN通过智能技术生成

语法基础

JDK JRE

JRE指的是JAVA运行环境,包括了JVM和JAVA的核心类库。

JDK是JAVA开发工具包,不仅包含JRE,还有JAVA基础类库和常用的JAVA开发工具比如编译器、调试器

基本数据类型

有8个,4个整数类型byte short int long(1,2,4,8),2个浮点类型float double(4 8),字符类型char(2),布尔类型 boolean(4)

除了布尔类型之外的其他7个类型,都可以看做是数字类型,它们相互之间可以进行类型转换。

访问修饰符
  • private:在类本身内可见
  • default: 在相同的包内可见
  • protected:在相同的包内和所有的子类可见
  • public:对所有类可见

自己的类→相同包的子类→子类→所有类

⾃动装箱与拆箱
  • 装箱:把基本数据类型转换为包装类型
  • 拆箱:将包装类型转换为基本数据类型
为什么有了int还要有设计Integer

int 是基本类型,直接存数值,而integer是包装类,用一个引用指向这个对象。对象封装有很多好处,可以把数据与处理这些数据的方法结合在一起,比如Integer就有parseInt()方法来专门处理int型相关的数据。

另一个非常重要的原因是,很多方法的使用都是用来处理引用数据类型的,如ArrayList集合类就只能以类作为他的存储对象,而这时如果想把一个int型的数据存入list是不可能的,必须通过自动装箱将其转换为Integer才能被List所接受。

局部变量、成员变量
  • 成员变量:(其他语言里叫全局变量,,Java不支持全局可见的变量,因为:全局变量破坏了引用透明性原则。全局变量导致了命名空间的冲突。)
  1. 成员变量是在类的范围里定义的变量;
  2. 成员变量有默认初始值;
  3. 未被static修饰的成员变量也叫实例变量,实例化之后可以被类访问,它存储于对象所在的堆内存中,生命周期与对象相同;
  4. 被static修饰的成员变量也叫静态/类变量,可以直接被类访问,也就是方便在没有创建对象的情况下调用变量或方法,它存储于方法区中,生命周期与当前类相同。
  • 局部变量:
  1. 局部变量是在方法的范围里定义的变量;

  2. 局部变量没有默认初始值,因此我们使用它之前要对其进行初始化;

  3. 局部变量存储于栈内存中,生命周期与方法相同。

for循环 while循环 do while循环

for循环格式固定,控制次数方便。因此for循环时候提前知道循环总次数的场景。

for循环括号内定义的变量仅仅在循环内可用,while的初始化表达式本来就在外面所以仍然可用。

while循环格式灵活,不在意控制次数。结构在循环的开始判断下一个迭代是否应该继续。

do/while结构在循环的结尾来判断是否将继续下一轮迭代。do结构至少会执行一次循环体。

public static void main(String args[])这段声明里每个关键字的作用

public 因为main方法是java程序运行时调用的第一个方法,因此必须可见

static java在调用main方法的时候不会创建这个类的实例,因此声明为静态方法

void main方法没有返回值

String 指命令行传进参数的类型,args指命令行传进的字符串数组

System.out.println每个关键字的作用

system是java的一个类,out是system类下的一个静态变量

print是个方法,里面调用的就是借用输出流进行打印

final!
  • 修饰一个变量时,它只有一次赋值的机会,若是成员变量中的final int i必须在定
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值