Java核心技术-卷I-读书笔记(第十二版)

第一章 Java程序设计概述

  1. 09年sun被oracle收购->11年java7(简单改进)->14年java8(函数式编程)->2017年java9->2018年java11->2021年java17

第二章 Java编程环境

  1. Java9后新增JShell,提供类似脚本试执行java代码的能力。

第三章 Java的基本程序设计结构

  1. 类名必须大写,main方法必须试public。
  2. 八种基本数据类型:byte、char、short、int、long、float、double、bool
  3. Java10对于局部变量,支持通过var定义变量并自动化推导变量类型。
var greeting = "Hello"
  1. final定义常量,表示变量只能被赋值一次。static final表示类常量。
  2. const是java的保留字,但是目前没有使用。
  3. 枚举类型的定义:
enum Size {SMALL,MEDIUM,LARGH}
Size s= Size.SMALL;
  1. 数学运算函数:Math.sqrt(x)、Math.pow(x,a)等
  2. 数值类型的合法转化:实线无数据丢失,虚线有数据丢失。

数值类型转换
9. 强制类型转换(cast)会引起数据精度丢失。

double x = 9.99;
int y = (int)x; // x is 9
  1. &&和||支持短路特性。
  2. Java14引入switch表达式,可用于在两个以上值做选择(丰富了condition三目运算符)。case类型可以是字符串/逗号分隔的字符串/枚举/常量表达式。
String season = Switch(seasonCode){
	case 0 -> "Spring";
	case 1 -> "Summer";
	case 2 -> "Summer";
	case 3 -> "Fall";
	case 1 -> "Winter";
	default -> "???";
};
  1. Java中字符串是不可修改的(immutable)。字符串存储在常量池中,字符串变量指向常量池中字符串的位置。
  2. 字符串的相等判断:

==:判断字符串是否在同一位置
equals():判断字符串内容是否相等

  1. 空串是长度为0的字符串对象,null为空对象,两者有区别。
  2. 构建字符串可以使用StringBuilder(效率高,但是不支持多线程)和StringBuffer(效率低,但是支持多线程)。
  3. Java15新增代码块text block。
String greeting = “”“
Hello
World
““”;
  1. swith支持表达式和语句,且支持“直通”和“非直通式”。直通式case以冒号结束,非直通式case以->结束。与break类似,yield也会终止执行,但是相比于break,yield还会生成一个值。
    在这里插入图片描述
    在这里插入图片描述
  2. berak提供跳转到标签的语法。
  3. 不能在switch表达式中使用break,return,continue语句,switch表达式优于语句。yield与break类似,会中断语句,而且还会返回一个值。
  4. 大数使用BigInteger和BigDecimal 大数字操作不能使用运算符,因为Java没有重载运算符。
  5. 数组声明int[] a或者int a[]。支持字面量直接创建:int[] a={1,2,3,};最后可以有逗号。你你你数组:new int[] {1,2,3}。允许有空数组。
  6. 数组操作Arrays类,copyof深复制,sort快速排序等。

第四章

  1. 类之间的关系:依赖use a,聚合has a,继承is a。
  2. Java10之后可以使用var定义局部变量。参数和字段的类型必须明确声明。
  3. final字段必须在构造对象时初始化。常用于修饰基本数据类型和不可变类。修饰可变类表示其引用不变,但是引用内容可变。
  4. Java14引入记录并在Java16版本发布,是一种特殊形式的类,用record声明。一个记录的实例称之为组件。

第五章 继承

  1. 不能讲父类引用赋值给子类对象。
  2. 方法参数中,允许接受带类型的列表对象。如run(ArrayList eList)方法可以接受ArrayList eList变量。但是将普通类型传给带类型的就会报错。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值