Java学习笔记 知识点整理

Java

1.BigDecimal浮点数运算

2.String字符串对象,线程池

 在单机多线程情况下,使用StringBuilder会有较好的效率,因为StringBuilder不处理同步的问题,StringBuffer则会处理同步问题,在多线程环境下建议改用StringBuffer,让对象自行管理同步问题。

String对象每次使用‘+’都会创建出一个新的String对象,因此在循环中尽量不要使用'+‘,可以用StringBuilder的append()等方法代替

3.重载:返回值不可作为方法重载依据

编译程在处理重载方法的顺序:

a.还没有装箱动作前可符合自变量个数与类型的方法

b.装箱动作后可符合自变量个数与类型的方法

c.尝试有不定长度自变量并可符合自变量类型的方法

d.找不到合适的方法,编译错误


4.this()调用只能出现在构造函数的第一行,在创建对象之后、调用构造函数之前(即类的最前部分),若有想执行的流程,可以使用{}定义

5.局部变量声明为final,表示设值之后不能再改变,若没有明确使用=指定值,那表示延迟对象成员值的指定,在构造函数执行流程中一定要有对该数据成员指定值的动作,否则编译错误

6.被声明为static的成员或方法,不会让个别对象拥有,而是属于类

被声明为static的成员或方法最好使用类名调用,而不是用类声明的对象调用,格式为:ClassName.method

static区块不能出现this关键字,也不能调用非static的方法或区块,可以使用static区块的数据成员和方法成员

7.不定长度自变量

8.继承、多态、重写、接口

9.自动尝试关闭资源。在try的括号中,越后面撰写的对象资源会越早被关闭。AutoCloseable接口。 异常继承架构

10.List,Set,Queue,Collection,Iterable与Iterator,Comparable和Comparator,Map

在Java规范中,与顺序有关的行为,通常要不对象本身是comparable,要不就是另行指定Comparator对象告知如何排序

Comparator.nullsFirst(); Comparator.reverseOrder();Collections.sort(); comparing();thenComparing()

11.串流继承架构

12.ClassName::methodName    ------》    方法参考,参考了现有的static方法,目的是尽量运用现有的API

13.Lambda表达式中this的参考对象以及toString()的接收者,是来自Lambda的周围环境,也就是看Lambda表达式是在哪个名称范畴。

禁止在Lambda中修改局部变量的值,如果要在匿名内部类中存取局部变量,则该局部变量必须是final,否则会发生编译错误。

14,若C继承接口A,B,而接口A,B中有一个相同的方法,则必须在子类C中,用super明确指定父接口中的方法,如A.super.method().否则出现编译错误。

类中的定义优先于接口中的定义,如果有重新定义,就以重新定义的为主,必要时使用接口与super指定采用哪个默认方法。

15.使用Optional取代null;

orElse("代替值");   ----》 当Optional对象为空时,orElse()中的代替值可代替空对象

16.java.util.function------->Consumer:  接受 单一对象实例作为自变量,不返回实例

Function:    接受自变量计算之后返回结果

Predicate:   接受自变量返回布尔值

Supplier:  不接受自变量返回值

17.Stream管道操作,Stream只能迭代一次,重复对其迭代一次会引发异常

Collection都可以进行中间操作。Collection.stream() + filter()/map()/collect(toList())/forEach()



18.IO 操作:

http://blog.csdn.net/u012124438/article/details/77150991

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
java核心知识点整理 1.Java中没有多继承,而是用接口来代替多继承 2.运行一个已经编译的程序时,Java解释器总是从指定类的main方法中的代码开始执行,因此,执行代码中必须有一个main函数。 3.Java是典型的强类型语言,即必须声明变量的类型,Java中有8种类型,6种数值类型(4个整数型和2个浮点型)、一个字符类型和一个boolean类型。 想学习java可以来这个群,首先是二二零,中间是一四二,最后是九零六,里面有大量的学习资料可以下载。 4.强制类型转换: int nx = (int) x; // (语法:用圆括号将目标类型括起来,后面跟上要转换的变量); 5.Java不能为单独的方法,如main方法,定义局部常量,而只能为类定义常量,供该类的所有方法使用,所以,通常称之为类常量。如: class UsersConstants{ 2public static final double g = 32; public static final double main(String[] args){ System.out.println(g); } } 注意:常量定义于main方法的外边,而且必须有关键字 static final; 6.字符串的子串: String str = hello”“; String str1 = str.substring(0,4); //输出hell 7.不要用==运算符来测试两个字符串是否相等,该运算符只能判断两个字符串是否存在同一个位置。 用equals. String str = “hello”; str.equals(”hell”); // return false; 8.对象的行为、状态、标识 9.面向过程与OOP
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值