随笔分类 -  javaSE学习笔记

2021-08-15 决定开始学习java,记录一些基础知识中的易混淆点和难点。
摘要:体验Stream流 eg:使用Stream流的方式完成过滤操作 : list.stream().filter(s -> s.startWith("张")).filter(s -> s.length() ==3).forEach(System.out::println); Stream流的生成方式 S 阅读全文
posted @ 2021-09-11 14:50 Lanezzz 阅读(402) 评论(0) 推荐(0)
摘要:接口组成更新概述 接口的组成: 1.常量 public static final 2.抽象方法 public abstract 3.默认方法(java8) 4.静态方法(java8) 5.私有方法(java9) #接口中的默认方法 这是在jdk8中新添加的,因为如果我需要在接口中添加新的抽象方法,那 阅读全文
posted @ 2021-09-10 20:06 Lanezzz 阅读(191) 评论(0) 推荐(0)
摘要:#Lambda表达式 标准格式: 匿名内部类重写run()方法的代码解析: new Thread(new Runnable(){ @Override public void run(){ System.out.println("多线程程序启动了") } }).start(); 可以看到这个例子里的r 阅读全文
posted @ 2021-09-04 15:55 Lanezzz 阅读(51) 评论(0) 推荐(0)
摘要:网络编程概述 实现网络互连的不同计算机上运行的程序间可以进行数据交换 网络编程三要素 简单来说就是IP地址,用来识别设备的,端口,用来识别应用程序的,协议,用来遵守"交通规则"的 #IP地址 IPv4:是给每个连接在网络上的主机分配一个32bit地址,要是用二进制表示,就是4个字节,不过一般用10进 阅读全文
posted @ 2021-09-04 12:38 Lanezzz 阅读(32) 评论(0) 推荐(0)
摘要:#同步代码块解决数据安全问题 出现数据安全问题的原因: 1.是否是多线程环境 2.是否有共享数据 3.是否有多余操作共享数据 解决思路:把多条语句操作共享数据的代码给锁起来,让任一时刻只能有一个线程执行即可。 在java中,提供了同步代码块,锁多条语句操作共享数据,格式如下: synchronize 阅读全文
posted @ 2021-09-02 12:38 Lanezzz 阅读(95) 评论(0) 推荐(0)
摘要:#进程与线程 进程:是正在运行的程序 是系统进行资源分配和调用的独立单位 每一个进程都有它自己的内存空间和系统资源 线程:是进程中的单个顺序控制流,是一条执行路径 单线程:一个进程如果只有一条执行路径,则称为单线程程序,比如记事本程序,页面设置不做完,不能继续输入东西。 多线程:一个进程如果有多条执 阅读全文
posted @ 2021-09-01 16:35 Lanezzz 阅读(48) 评论(0) 推荐(0)
摘要:标准输入流 因为是 public static final InputStream in 标准输入流,被static修饰,说明可以通过类名访问System.in 不过现在不太明白InputStream is = System.in;的用法<, System类中有两个静态的成员变量: public s 阅读全文
posted @ 2021-09-01 13:22 Lanezzz 阅读(80) 评论(0) 推荐(0)
摘要:为什么会输出字符流 由于字节流操作中文不是特别的方便,所以java就提供字符流 字符流 = 字节流 + 编码表 用字节流复制文本文件时,文本文件也会有中文,但是没问题,因为最终底层操作会自动进行字节拼接成中文,如何识别是中文的呢? 汉字在存储的时候,无论选择哪种编码存储,第一个字节都是负数。 编码表 阅读全文
posted @ 2021-08-30 12:34 Lanezzz 阅读(50) 评论(0) 推荐(0)
摘要:IO流 按照数据的流向,有输入流(读数据),输出流(写数据) 按照数据类型来分,有字节输入、输出流,有字符输入、输出流,读的懂的用字符流,读不懂的用字节流 一般是按数据类型来分的 字节流写数据 字节流抽象基类: InputStream:这个类表示字节输入流的所有类的超类,OutputStream:这 阅读全文
posted @ 2021-08-26 20:46 Lanezzz 阅读(34) 评论(0) 推荐(0)
摘要:递归 从编程角度来看,就是在方法中调用方法 递归解决问题,首先要定义一个方法。然后把一个大问题转化为与原问题相似的规模较小的问题,这样的话程序比较小,另外注意需要给递归一个出口 eg: public static int f(int n ){ if (n==1 || n==2){ return 1; 阅读全文
posted @ 2021-08-26 12:58 Lanezzz 阅读(27) 评论(0) 推荐(0)
摘要:File构造方法 是文件和目录路径名的抽象表示,文件和目录是可以通过File封装成对象的,对于File而言,封装的并不是一个真正存在的文件,仅仅是 一个路径名而已。 三种构造方法: 1.File(String pathname) eg:File f1 = new File("D:\itcast\ja 阅读全文
posted @ 2021-08-25 21:25 Lanezzz 阅读(27) 评论(0) 推荐(0)
摘要:Map Inferface Map<K,V> K:键的类型; V:值的类型 将键映射到值的对象;不能包含重复的键;每个键可以映射到最多一个值 创建Map集合的对象 多态的方式,具体的实现类HashMap Map集合的对象没有add方法,只有put(K key, V value),将指定的值与该映射中 阅读全文
posted @ 2021-08-25 17:09 Lanezzz 阅读(47) 评论(0) 推荐(0)
摘要:泛型 泛型就是将类型由原来的具体的类型参数化,然后再使用/调用时传入具体的类型,这种参数类型可以用在类、方法、接口中,即泛型类 泛型方法,泛型接口。 泛型定义格式:1.<类型>指定一种类型的格式,这里的类型可以看成是形参 2.将来具体调用时候给定的类型可以看成是实参,并且是实参的类型只能是,引用数据 阅读全文
posted @ 2021-08-24 20:46 Lanezzz 阅读(38) 评论(0) 推荐(0)
摘要:Set集合概述 不包含重复元素的集合 没有带索引的方法,所以不能用普通for循环遍历 Set是接口,所以需要实现类,HashSet就是其中一个,它由哈希表(是极为HashMap实例)支持。对集合的迭代顺序不做保证。 哈希值 是JDK根据对象的地址或者字符串或者数字算出来的int类型的数值 Objec 阅读全文
posted @ 2021-08-24 16:49 Lanezzz 阅读(67) 评论(0) 推荐(0)
摘要:集合体系结构 集合分为Collection(单列),Map(双列)有映射关系,其中单列可重复元素用List实现,可重复用Set实现 List主要学习ArratList和LinkedList, Set主要学习HashSet和TreeSet,Map主要学习HashMap Collection 用的时候只 阅读全文
posted @ 2021-08-21 16:58 Lanezzz 阅读(118) 评论(0) 推荐(0)
摘要:异常 异常体系的超类是Throwable,下面有Error类和Exception类,Error类属于严重问题,不需要处理,Exception类属于异常类, 它表示程序本身可以处理的类。Exception类下面又有两个类,分别为RuntimeException类和非RunTimeException类, 阅读全文
posted @ 2021-08-20 12:50 Lanezzz 阅读(91) 评论(0) 推荐(0)
摘要:Arrays类 Arrays类包含用于操作数组的各种方法,两种最常用的,一个是toString(int[] a) 还有一个是 sort(int[] a) PS:跟Math类一样,他们的构造方法都是private修饰的,目的是不让创建对象,成员都是用public static修饰,目的是为了 直接用类 阅读全文
posted @ 2021-08-19 21:03 Lanezzz 阅读(48) 评论(0) 推荐(0)
摘要:常用API Math 一些简单的数学操作 System 常用的 System.exit() System.CurrentTimeMillis(); 以上的方法都是通过类名来访问 Object 有个toString()方法,挺好用的,最好自己重写,比较简洁,利用Alt + Insert 有个equal 阅读全文
posted @ 2021-08-19 15:41 Lanezzz 阅读(23) 评论(0) 推荐(0)
摘要:类名作为形参和返回值 其实需要的都是该类的对象。由此引申出一个问题,如果是抽象类,那不能实例化对象,就只能采用多态的思想,定义一个子类,生成一个子类对象作为参数或返回值。 接口名作为形参和返回值 与抽象类同样,因为接口也是不能实例化对象的,只能参考多态,定义实现类,创建实现类对象,作为形参和返回值。 阅读全文
posted @ 2021-08-19 14:01 Lanezzz 阅读(37) 评论(0) 推荐(0)
摘要:多态 比较好的例子: 猫 cat = new 猫(); 动物 animal = new 猫(); 可以看到,猫对象,既能属于猫类,也能属于动物类。这就象征着不同的形态。 多态的前提和体现: 有继承/实现关系 有方法重写 有父类引用指向子类对象 多态中成员访问的特点: 成员变量:编译看左边,执行看左边 阅读全文
posted @ 2021-08-19 10:33 Lanezzz 阅读(38) 评论(0) 推荐(0)