![](https://img-blog.csdnimg.cn/20190927151101105.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java笔记
java学习笔记
#Hideonbush
这个作者很懒,什么都没留下…
展开
-
java Stream详解
Stream的执行流程可分为:Stream的创建 -> 一些列的中间操作(过滤,映射等) -> 终止操作1.Stream的创建方式package com.yl.pdfdemo.day08.p8;import org.junit.Test;import java.util.Arrays;import java.util.List;import java.util.stream.IntStream;import java.util.stream.Stream;/** * @A原创 2021-07-14 21:21:57 · 219 阅读 · 0 评论 -
java 动态代理例子
package com.yl.pdfdemo.day08.p6;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;/** * @Author wfj * @Date 2021/7/13 * @Description 动态代理例子 * @Version 1.0 */public class ProxyTest { p原创 2021-07-13 16:32:24 · 67 阅读 · 0 评论 -
java 静态代理例子
1.代理,可以理解为被代理类想干的活由代理类来干,代理类在干被代理类的活的同时,也可以干自己的活。package com.yl.pdfdemo.day08.p6;/** * @Author wfj * @Date 2021/7/13 * @Description 静态代理例子 ,特点:代理类和被代理类在编译期间就确定下来了 * @Version 1.0 */public class StaticProxy { public static void main(String[] ar原创 2021-07-13 15:52:08 · 166 阅读 · 0 评论 -
java 反射
1.反射概述package com.yl.pdfdemo.day08.p6;import org.junit.Test;import java.lang.annotation.ElementType;import java.lang.reflect.Constructor;import java.lang.reflect.Field;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Met原创 2021-07-13 15:21:47 · 55 阅读 · 0 评论 -
java 网络编程
1.网络编程概述package com.yl.pdfdemo.day08.p5;import org.junit.Test;import java.net.InetAddress;import java.net.UnknownHostException;/** * @Author wfj * @Date 2021/7/1 * @Description 网络编程概述 * @Version 1.0 */public class InternetTest { /**原创 2021-07-02 10:11:59 · 70 阅读 · 2 评论 -
java 流详解
1.流的分类1)操作数据单位:字节流,字符流2)数据的流向:输入流,输出流3)流的角色:节点流,处理流四个最基本的抽象基类InputStream,OutputStream,Writer,Reader流分类图2.FileWriter和FileReader(字符流)基本使用package com.yl.pdfdemo.day08.p4;import org.junit.Test;import java.io.File;import java.io.FileReader;import原创 2021-06-30 10:06:56 · 286 阅读 · 1 评论 -
java File类的常用方法
1.概述package com.yl.pdfdemo.day08.p4;import org.junit.Test;import java.io.File;import java.io.IOException;/** * @Author wfj * @Date 2021/6/28 * @Description File的使用 * @Version 1.0 */public class FileTest { /** * 1.File类的对象,代表一个文件或者一个原创 2021-06-30 09:51:36 · 91 阅读 · 0 评论 -
java 泛型与通配符
1.泛型概念:所谓泛型,就是允许在定义类,接口时,通过一个标识来表示类中某个属性的类型或者是某个方法的返回值及参数类型2.基本使用package com.yl.pdfdemo.day08.p2;import org.junit.Test;import java.util.*;/** * @Author wfj * @Date 2021/6/25 * @Description 泛型 * @Version 1.0 */public class GenericTest { /原创 2021-06-25 15:46:26 · 153 阅读 · 1 评论 -
java 集合详解
1.java里,集合包含Collection(单列集合)和Map(双列集合),两者均为根接口,其下还有多个实现类。关系图1)Collection关系图2)Map关系图2.集合概述package com.yl.pdfdemo.day08.p2;import org.junit.Test;import java.util.ArrayList;import java.util.Collection;import java.util.Date;/** * @Author wfj *原创 2021-06-21 10:26:09 · 164 阅读 · 1 评论 -
jdk8 HashMap底层原理
1.HashMap: 作为Map的主要实现类,jdk1.2出现,线程不安全的,效率高,可以存储null的key和value,jdk7中其底层结构只有:数组+链表,jdk8中其底层结构:数组+链表+红黑树,以下只讲jdk8的2.了解HashMap这几个属性:1)DEFAULT_INITIAL_CAPACITY: HashMap的默认容量:162)DEFAULT_LOAD_FACTOR: Hash默认的加载因子:0.753)TREEIFY_THRESHOLD: 当链表中数据大于改默认值,则转换为红黑树,原创 2021-06-18 16:05:17 · 529 阅读 · 3 评论 -
java BigInteger,BigDecimal基本使用
package com.yl.pdfdemo.day08.p1;import org.junit.Test;import java.math.BigDecimal;import java.math.BigInteger;/** * @Author wfj * @Date 2021/6/9 * @Description * @Version 1.0 */public class OtherClassTest { //System类的相关方法 @Test p原创 2021-06-11 15:44:03 · 1047 阅读 · 1 评论 -
java 注解的基本使用
1.注解含义:注解其实就是代码里特殊的标志,这些标志可以在编译,类加载,运行时被读取,并执行相应的处理,注解可以像修饰符一样使用,可用于修饰包,类,构造器,2.自定义注解package com.yl.pdfdemo.day08.p1;import java.lang.annotation.*;import static java.lang.annotation.ElementType.*;import static java.lang.annotation.ElementType.LOCAL_原创 2021-06-11 15:41:30 · 1180 阅读 · 0 评论 -
java 枚举
1.枚举类概念:类的对象只有有限个,确定的,我们把这个类成为枚举类。当需要定义一组常量时,强烈建议使用枚举类2.jdk5.0之前自定义枚举package com.yl.pdfdemo.day08.p1;/** * @Author wfj * @Date 2021/6/9 * @Description 枚举类的使用 * @Version 1.0 */public class SeasonTest { /** * 一、枚举类的使用 * 1.枚举类的理解:类的对原创 2021-06-09 16:04:24 · 57 阅读 · 0 评论 -
java 比较器(Comparable接口和Comparator接口)
1.java比较器包含Comparable接口和Comparator接口2.基本使用package com.yl.pdfdemo.day08.p1;/** * @Author wfj * @Date 2021/6/9 * @Description * @Version 1.0 */public class Goods implements Comparable{ private String name; private double price; public原创 2021-06-09 15:03:43 · 108 阅读 · 0 评论 -
java8时间api
1.java8中关于时间,常用的类有LocalDate,LocalTime,LocalDateTime,DateTimeFormater,Instant2.基本使用package com.yl.pdfdemo.day08.p1;import org.junit.Test;import java.time.*;import java.time.format.DateTimeFormatter;import java.time.format.FormatStyle;import java.ti原创 2021-06-09 15:00:59 · 63 阅读 · 0 评论 -
java8之前的时间api
1.java8之前的时间主要的类,包含两个,java.util.Date,java.sqlDate2.基本使用package com.yl.pdfdemo.day08.p1;import org.junit.Test;import java.util.Date;/** * @Author wfj * @Date 2021/5/12 * @Description java中的两个时间类:java.util.Date、java.sql.Date * @Version 1.0 */p原创 2021-06-09 14:57:38 · 76 阅读 · 0 评论 -
java-String笔记
1.String的基本概念package com.yl.pdfdemo.day08.p1;import org.junit.Test;/** * @Author wfj * @Date 2021/5/8 * @Description String的使用 * @Version 1.0 */public class StringTest { /** * String:字符串,使用一对""引起来表示 * 1.String声明为final,表明为不可被继承的原创 2021-06-01 11:56:05 · 141 阅读 · 0 评论 -
java-线程笔记
归纳下常考的知识点一、创建线程的方式有多少种?四种,继承Thread类,实现Runnable接口,实现Callable接口,线程池二、如何理解实现Callable接口的方式创建线程比实现Runnable接口创建多线程方式强大?1.call()可以有返回值2.call()可以抛出异常,被外面的操作捕获,获取异常的信息3. Callable是支持泛型的三、解决线程安全的方式有多少种?三种,同步代码块,同步方法,Lock(jdk5新增)四、对比下synchronized和Lock?相同:二者都原创 2021-05-13 10:23:29 · 130 阅读 · 1 评论 -
java-异常笔记
1.异常的分类,编译时异常,运行时异常package com.yl.pdfdemo.day06;import org.junit.Test;import java.util.Date;import java.util.Scanner;/** * @Author wfj * @Date 2021/4/20 * @Description 异常 * @Version 1.0 */public class ExceptionTest1 { /** *原创 2021-04-27 15:06:31 · 91 阅读 · 0 评论 -
java-面向对象(下)
面向对象的第三特征是:多态,多态可以理解为事物的多样性,亦可以用一句话概括,父类引用指向子类对象。1.多态的基本使用(注意:对于方法而言,编译看左边,运行看右边,但对于属性而言,其编译看左边,运行也是看左边,所以多态只适用于方法)package com.yl.pdfdemo.day05.p1;/** * @Author wfj * @Date 2021/3/30 * @Description * @Version 1.0 */public class Person { Stri原创 2021-04-19 16:13:56 · 391 阅读 · 0 评论 -
java-面向对象(中)
1.面向对象的第二特征:继承继承的好处:1)减少了代码的冗余,提高了代码的复用性2)便于功能的扩展3)为之后多态性的使用,提供了前提2.继承的基本概念package com.yl.pdfdemo.day04.p1;/** * @Author wfj * @Date 2021/3/29 * @Description * @Version 1.0 */public class Creature { public void run() { System.out原创 2021-04-19 14:51:13 · 63 阅读 · 0 评论 -
java-面向对象(上)
说到面向对象,我们又会想到面向过程,这两者有何区别呢?一、了解相关概念1.面向过程(POP)Prodcedure Oriented Programming和 面向对象(OOP)Object Oriented Programming 二者都是一种思想,面向对象是相对于面向过程而言的,面向过程,强调的是功能行为,以函数为最小单位,考虑怎么做。面向对象,将功能封装进对象,强调具备了功能的对象,以类/对象为最小单位,考虑谁来做2.面向对象更加强调运用人类在日常生活中的思维逻辑中采用的思想方法和原则,如抽象,分原创 2021-03-29 16:26:15 · 144 阅读 · 1 评论 -
java-客户信息管理软件
基于客户的增删改查案例1.工具类package com.yl.pdfdemo.day03.project2.util;import java.util.Scanner;/** * @Author wfj * @Date 2021/3/23 * @Description 工具类 * @Version 1.0 */public class CrmUtils { private static Scanner scanner = new Scanner(System.in);原创 2021-03-29 14:24:00 · 349 阅读 · 0 评论 -
java--数组的使用·
1.一维数组内存结构分析2.一维数组概述package com.yl.pdfdemo.day02;import java.util.Arrays;import java.util.Scanner;/** * @Author wfj * @Date 2021/1/21 * @Description 数组的使用 * @Version 1.0 */public class ArrayTest1 { public static void main(String[] args)原创 2021-01-24 14:27:07 · 90 阅读 · 0 评论 -
java--家庭收支记账案例
1.工具类package com.yl.pdfdemo.day01;import java.util.Scanner;/** * @Author wfj * @Date 2021/1/20 * @Description 家庭收支记账软件工具类 * @Version 1.0 */public class Util { private static Scanner scanner = new Scanner(System.in); /** * 用于获取键盘输入原创 2021-01-21 09:33:25 · 275 阅读 · 0 评论 -
java中continue和break的区别
1.在java循环里面,有时候经常用到break和continue这两个关键字,如下为其区别。1.1 break输出结果如下:1.2 continue输出结果如下:原创 2020-04-29 16:57:54 · 187 阅读 · 0 评论 -
java--for循环嵌套使用
package com.yl.pdfdemo.day01;/** * @Author wfj * @Date 2021/1/20 * @Description 嵌套for循环的使用 * @Version 1.0 */public class ForTest2 { public static void main(String[] args) { /** * 嵌套for循环的使用 * 1.嵌套循环: 将一个循环结构A声明在另一个循环结原创 2021-01-20 19:48:24 · 482 阅读 · 0 评论 -
java--while循环与doWhile循环
package com.yl.pdfdemo.day01;/** * @Author wfj * @Date 2021/1/16 * @Description while循环和doWhile循环的使用 * @Version 1.0 */public class WhileTest1 { public static void main(String[] args) { /** * while循环的使用 * 4个要素原创 2021-01-16 16:50:28 · 172 阅读 · 1 评论 -
java--for循环的使用
package com.yl.pdfdemo.day01;import java.util.Scanner;/** * @Author wfj * @Date 2021/1/16 * @Description for循环的使用 * @Version 1.0 */public class ForTest1 { public static void main(String[] args) { /** * for循环的使用 * 4个原创 2021-01-16 16:36:28 · 104 阅读 · 0 评论 -
java--switch-case的使用
package com.yl.pdfdemo.day01;import java.util.Scanner;/** * @Author wfj * @Date 2021/1/16 * @Description switch-case的使用 * @Version 1.0 */public class SwitchCaseTest { public static void main(String[] args) { /** * 分子结构二:swit原创 2021-01-16 15:06:31 · 148 阅读 · 1 评论 -
java--Scanner的基本使用
package com.yl.pdfdemo.day01;import java.util.Scanner;/** * @Author wfj * @Date 2021/1/10 * @Description scanner的基本使用 * @Version 1.0 */public class ScannerTest { public static void main(String[] args) { /** * 如何从键盘中获取不同类型的变量原创 2021-01-10 21:48:21 · 71 阅读 · 0 评论 -
java--if-else的基本使用
package com.yl.pdfdemo.day01;/** * @Author wfj * @Date 2021/1/10 * @Description if else 结构的基本使用 * @Version 1.0 */public class IfTest { public static void main(String[] args) { /** * 分支结构中的if-else(条件判断结构) * *原创 2021-01-10 20:38:15 · 545 阅读 · 1 评论 -
java--运算符
运算符是一种特殊的符号,用于表示数据的运算、赋值和比较等等。1.算术运算符package com.yl.pdfdemo.day01;/** * @Author wfj * @Date 2021/1/10 * @Description 算数运算符 * @Version 1.0 */public class AriTest { public static void main(String[] args) { /** * 运算符之一:算术运算符原创 2021-01-10 17:54:26 · 139 阅读 · 1 评论 -
java--进制之间的转换
package com.yl.pdfdemo.day01;/** * @Author wfj * @Date 2021/1/9 * @Description 进制之间的转换 * @Version 1.0 */public class BinaryTest { public static void main(String[] args) { /** * 所有数字在计算机底层都是以二进制存在的 * 对于整数,有四种表示方式原创 2021-01-09 14:53:53 · 131 阅读 · 0 评论 -
java--String
1.String属于引用数据类型,可以和8种基本数据类型坐运算,且只能是连接运算: +package com.yl.pdfdemo.day01;/** * @Author wfj * @Date 2021/1/9 * @Description String的使用 * @Version 1.0 */public class StringTest { public static void main(String[] args) { /** * St原创 2021-01-09 13:35:25 · 72 阅读 · 1 评论 -
java--数据类型
java里数据类型分为两种,基本数据类型和引用数据类型。1.基本数据类型整形:byte short int long浮点型:float double字符型: char布尔型: boolean2.引用数据类型类(class)接口(interface)数组(array)基本数据类型整形的存储空间以及取值范围如下,分别为byte,short,int和long占用存储空间取值范围1字节 = 8比特-128~1272字节-2~15 ~ 2~15-14字节-2原创 2021-01-03 22:32:39 · 92 阅读 · 0 评论 -
java--变量
1.变量的概念1)内存中的一个存储区域2)该区域的数据可以在同一类型范围内不断变化3)变量是程序中最基本的存储单元,包含变量类型、变量名和变量值2.变量的作用1)用于在内存中保存数据3.使用变量时注意1)java中,变量都得先声明再使用2)访问数据时,是通过变量名来访问数据的3)变量的作用域:其定义在{ }内部4)变量只有在其作用域里才有效5)同一个作用域下,不能定义名称重复的变量名4、定义变量格式变量类型 变量名称 = 变量值...原创 2021-01-03 15:38:23 · 71 阅读 · 0 评论 -
java--标识符
1.java对各种变量、方法、类名和包名等要素命名时使用的字符序列称为标识符。2.定义规则1)由26个英文字母大小写,0-9,_或$组成2)不能以数字开头3)不可以使用关键字和保留字,但可以包含关键字和保留字4)java中严格区分大小写,长度无限制5)标识符不能包含空格注意: 如果命名不按照这个规则的发,编译不会通过。3.java中的名称命名规范包名: 多单词组成时全部都小写 =》 xxxyyyzzz类名,接口名: 多单词组成时,每个单词的首字母大写 =》XxxYyyZzz变量名,方原创 2021-01-03 15:23:08 · 101 阅读 · 3 评论 -
java--关键字与保留字
1.关键字的定义和特点定义:被java语言赋予了特殊含义,用作专门用途的单词特点:关键字中的字母都是小写的1)用于定义数据类型的关键字class interfac enum byte short int long float double char boolean void2)用于定于流程控制的关键字if else switch case default while do for break continue return3)用于定义访问权限修饰符的关键字private protected原创 2021-01-03 14:53:22 · 157 阅读 · 0 评论 -
java--入門程序-helloworld
1.一個java文件想要運行,流程為:java文件通過javac編譯生成一個字節碼文件,然後再通過java.exe執行這個字節碼文件即可2.新建一個java文件3.編譯這個文件4.執行這個文件,輸出内容原创 2021-01-03 13:15:15 · 47 阅读 · 0 评论