2023年 java核心知识点(前三章)

目录

java语言的特性

JDK安装注意事项

java的八个基本数据类型

变量的初始化

final

引用类型的强制转换注意事项

枚举类型

基本类型转换(注意int转float)

为什么int转float精度丢失?

char类型和int类型转换

String字符串

StringBuffer、StringBuilder与String的区别?

为什么StringBuffer、String、StringBuilder会比String快?

switch击穿(面试点)

大数值


推荐一个网站 www.pearson.com

里面有很多底层知识开发原理相关知识的书籍

java语言的特性

1.简单性:java语言比c要简单很多 2.面向对象 : java语言是一门面向对象的语言 3.分布式 4.健壮性 5.安全性:java程序一段出问题对整体影响小 6.体系结构中立 7.可移植性:jvm中运行,一次编译永久运行 8.解释性:java语言能够被翻译 9.高性能 : java语言是一门强语言 它的运行速度就很快 js和Python都属于弱语言 10.多线程 11.动态性 :现在的语言都具有动态性

JDK安装注意事项

注意:任何开发软件都不要最新的 因为首先刚出现不稳定,其次,网上的解决办法比较少

java的八个基本数据类型

boolean类型是32位 4个字节

char类型是根据内存编码决定的

变量的初始化

java当中的引用类型完全等价于c中的指针类型

在方法的里面声明的变量是没有默认值的;在方法外面定义的变量相当于类的一个属性,是new出来的,就有了默认值

final

final修饰的变量不能被赋值

final修饰的方法不能被重写

final修饰的类不能被继承

final防止指令重排序(多线程中)

final只能修饰基本类型和内存地址不可变类型的数据

final修饰变量的目的就是它的值不在发生变化,所以一般不用来修饰复杂类型

引用类型的强制转换注意事项

只能是两个类型具有继承关系,就是说一个类型是另一个类型的子类类型,

 Father father = new Son();   Son son = (Son)father; 

强制类型转换后依然满足多态

枚举类型

也是一种类,只不过就是一上来就限制了对象的个数

它也可以有自己的构造方法,也可以有自己的属性

基本类型转换(注意int转float)

E代表的是10的38次方

小转大一般不会丢失精度

为什么int转float精度丢失?

int32位 float也是32位

但是同样的位数 float的数值范围却比int大很多 也就意味着float的精度不准确 他只能精确到6-7位 而int能精确到10位 所以int转float会丢失精度

char类型和int类型转换

可以相互转换 char的底层也是通过数字实现的,所以char类型可以+int类型 char类型也可以+char 但是要用int类型去接收

String字符串

它的源地址的内容是不可变的,可以改变它的指向

字符串是final修饰的不可被继承的

字符串有哪些常用函数(面试点)

StringBuffer、StringBuilder与String的区别?

他们都可以用来进行拼接字符串,但是StringBuffer、StringBuilder要比String快很多

为什么StringBuffer、String、StringBuilder会比String快?

原因:String是不可变得 每次拼接都需要重新开辟地址 性能上就很慢,而其他两个都是直接开辟一个很大的空间(原理都是一开始直接申请一个很大的数组)因此是可变的,性能上远远大于String

StringBuffer是加锁的 多线程下较为安全,因此性能上稍微比StringBuilder快一些

switch击穿(面试点)

如果不写break语句就会一直向下执行,一直到遇到break为止

swich语句写法

case的标签可以是 char、byte、short或int表达式还有枚举类型常量

大数值

有些数会特别大的时候 最大的数值类型long能存储19位数字 当它也存不下的时候 就需要用到大数值 同时 用它计算精度也会很高

是一个包装类

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ADRU

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值