自学java基础
文章平均质量分 69
跟攀博学Java编程
传智燕青老师拥有近二十年的软件开发和教学经验,曾经录制的SpringMVC/Mybatis课程下载量超10万,Activiti工作流技术、Shiro/SpringSecurity认证授权技术专题、ShardingJDBC数据库分库分表技术专题、Lucene/Solr/Elasticsearch搜索技术专题、Java分布式系统事务控制技术专题、RabbitMQ/RocketMQ消息队列技术专题、医药采购系统、学成在线项目、聚合支付项目等课程广受学员好评。
展开
-
java.util.function函数式接口应用举例
Java函数式接口介绍Java8中有很多现成的函数式接口,它们在java.util.function包下,查看jdk文档,下图是部分的函数式接口:前边学习Lambda知道,函数式接口只有一个抽象方法,下边打开函数接口Consumer源代码,如下:package java.util.function;import java.util.Objects;@FunctionalInterfacepublic interface Consumer<T> { void accep原创 2021-07-23 11:15:39 · 1043 阅读 · 0 评论 -
Java基础进阶-ArrayList原理
1、ArrayList介绍ArrayList是List接口的实现类,它表示动态数组,何为动态数组?我们定义一个数组类型的变量需要指定数组的长度,长度一旦指定就无法扩容,比如:我们定义一个100个元素长度的数组,当需要存储的元素个数达到100以上时多余的元素将无法存储,ArrayList动态数组可以解决这个问题,ArrayList可以实现自动扩容数组。ArrayList的特点如下:1)查询快ArrayList的底层是数组,根据索引查询元素速度很快。2)增删慢向数组添加或删除元素后需要移动其它元素原创 2021-05-19 16:09:45 · 245 阅读 · 0 评论 -
彻底搞懂Java面向接口编程
定义接口接口的例子接口这个词在日常生活中经常听到,比如:USB接口,电源插座接口等,下边通过了解USB接口和电源插座接口来理解接口的意义。1)USB接口引用百度百科,USB是通用串行总线(英语:Universal Serial Bus,缩写:USB)是一种串口总线标准,也是一种输入输出接口的技术规范,被广泛地应用于个人电脑和移动设备等信息通讯产品,并扩展至摄影器材、数字电视(机顶盒)、游戏机等其它相关领域。最新一代是USB 3.1,传输速度为10Gbit/s,三段式电压5V/12V/20V,最大供电原创 2021-04-27 13:30:41 · 503 阅读 · 1 评论 -
彻底搞懂Java多态
很多初学者在自学Java时候都卡在了Java多态,本教程从实际案例出发阐述Java多态现象及Java多态的原理。通过案例理解多态的现象需求描述多态是类在继承关系下的一种形态,下边先通过一个需求展示下多态的现象。攀博课堂是一个在线教育学习平台,有一个具体的功能需求:当学员登录后系统需要根据学员的类型获取他在攀博课堂的服务权限,比如:对于普通学生他可以自学Java课程、下载资源、在线问答交流,对于Vip学员还可以额外有专属老师指导、专属交流群等 Vip服务,如何使用面向对象的编程思想实现这一功能需求。原创 2021-02-26 09:46:43 · 6588 阅读 · 9 评论 -
彻底搞清类的依赖关系、关联关系、聚合关系、组合关系
依赖关系在生产中,很多场景下类与类之间都存在一定的联系,类之间的关系包括:依赖、关联、聚合、组合、继承等 ,通过学习类之间的关系有利提高面向对象编程的能力,为解决生产实际问题打下基础。假设有两个类,类A和类B,类A的某个成员方法的参数有类B,说明类A使用了类B,类A依赖类B,依赖关系即uses-a关系,依赖关系除了被依赖方作为依赖方的方法参数,还可能作为依赖方的方法返回值存在,这些都是依赖关系的表现形式。如下图所示:依赖关系的例子有很多,比如:LocalDateTime的now方法根据时区ID创建L原创 2021-02-15 08:03:11 · 5787 阅读 · 1 评论 -
static静态变量与static静态方法
什么是静态变量最初接触main方法,它用static修饰,用static修饰方法叫静态方法,用static修饰变量叫静态变量。静态变量与成员变量一样都是定义在方法外,但与成员变量有本质的区别。1、静态变量与对象无关,成员变量与对象有关。静态变量与类有关,也称为类变量,加载类文件到方法区时在堆中单独开一个静态变量的空间用于存储静态变量。成员变量与对象有类,创建对象后成员变量在对象内存区开辟内存空间,所以成员变量也叫实例变量。可以理解为:每个对象有自己的成员变量,每个对象共用一份静态变量。2、定义原创 2021-02-15 07:54:34 · 992 阅读 · 0 评论 -
LocalDate&Period日期计算与LocalDateTime&Duration日期时间计算
前言项目中jdk8日期类库使用较多,本文对LocalDate日期计算和LocalDateTime日期时间计算进行阐述,通过例子测试日期计算的常用方法。LocalDate日期计算在应用开发中不可避免要进行日期的计算,如:计算几天后的日期,两个日期相差的天数等 。api如下,plus开头的方法是加上指定的天数、月数、年数,minus开头的方法是减去指定的天数、月数、年数:例子:package com.pbteach.javase.oop.dateapi;import java.time.Dur原创 2021-02-13 11:40:44 · 2768 阅读 · 2 评论 -
LocalDateTime的基本使用
LocalDateTime基本介绍从名字上可以看出来java.time.LocalDateTime是一个可以表示日期时间的对象,代表日期时间,通常被视为年 - 月 - 日 - 时 - 分 - 秒,也提供了其他日期和时间字段,例如星期。LocalDateTime的时间精度为纳秒精度(1秒=1000毫秒,1毫秒=1000微秒,1微秒=1000纳秒)。打开jdk8的api文档,找到java.time.LocalDateTime,分别了解它的构造方法、静态方法及对象方法等 。java.time.LocalDa原创 2021-02-13 11:24:20 · 8815 阅读 · 5 评论 -
final应用大全
final的作用final关键字表示不可变的意思,它可以修饰类、成员变量、成员方法以及局部变量。用final修饰一个类表示该类不可变,编译器不允许子类继承一个final的类;用final修饰一个方法表示该方法不允许子类去重写;用final修饰一个成员变量或局部变量表示该变量一旦赋值不允许修改。final修饰类下边是一个final修饰类的例子,用final修饰的类子类是无法继承的。定义PbStudent类并使用final修饰:package com.pbteach.javase.oop.fin原创 2021-02-13 11:17:52 · 311 阅读 · 0 评论 -
一篇文章搞定Java枚举类型
前言Java枚举类型虽然在特定的场景下通途很大,比如:对系统代码、系统参数等使用枚举类型表示,不仅解决使用常量配置参数可读性差的问题,还可以对数据进行分类,本文详解Java枚举类型在企业开发中的使用方法。常量项需求在系统中有一些变量它具有固定的取值范围,比如:学生类的性别属性包括男、女两个值、攀博课堂支付方式包括微信支付、支付宝支付、银联支付三种方式等,在程序中对这些取值通常用常量来表示,因为它们是固定在一定范围内的,如下代码是攀博课堂支付类中支付方式的的表示方式:package com.pbtea原创 2021-02-07 10:13:31 · 310 阅读 · 0 评论 -
传智燕青Java基础精讲教程带你从零基础自学Java到大牛(已开放下载)
零基础自学Java到大牛教程是传智燕青老师倾力打造的适合Java零基础学员的自学教程,本教程从企业生产实战出发进行课程设计,从基础到高级知识点系统、全面,学完本教程可达Java高级工程师和架构师水平。下载链接:http://www.pbteach.com/post/java/javase/本教程共分四个阶段:1、自学JavaSE课程。讲解Java基础语法、Java面向对象开发、IO、多线程、网络编程。2、自学Java Web开发课程。讲解JavaEE主流技术及常用Web系统开发技术,学完可达到互原创 2021-02-05 22:38:14 · 313 阅读 · 5 评论 -
Java基础精讲全十章课程大纲2021版--适合零基础的自学Java视频教程|javaSE视频教程
很多网友私信我询问零基础如何学习java,这里分享一套完整的零基础自学java基础知识的大纲,希望能帮助自学java的初学者们:全套免费在线学习原创 2021-02-02 08:01:33 · 550 阅读 · 2 评论 -
适合零基础自学java的Java基础精讲教程课程大纲介绍
自学Java能找到工作吗?自学编程可以学会吗?很多初学者私信我咨询自学java的学习路径,2021年伊始我研发了一套适合零基础自学的java教程,共分十个章节,下边分享课程的大纲,希望可以帮助到各位网友:本套教程正在陆续上线可在线学习,具体请关注我...原创 2021-02-01 09:00:58 · 307 阅读 · 0 评论 -
java位运算的应用场景举例
java位运算符介绍Java位运算符是对操作数的二进制位进行运算,操作数和计算结果都是整型。操作符如下:&与:两个二进制位只要有一个为0那么结果就为0,否则结果为1。|或:两个二进制位只要有一个为1那么结果就为1,否则结果为0。^异或:任何相同二进制位进行 ^ 运算,结果是0;不相同二进制位 ^ 运算结果是1。~取反:0变1,1变0用于奇偶校验位运算是直接操作二进制位,效率较高,一些算法会采用位运算。奇偶判断是判断一个是奇数还是偶数,如何使用位运算实现呢?使用与(&原创 2021-01-25 09:20:25 · 1244 阅读 · 0 评论 -
JDK1.8的新特性
JDK1.8的新特性1. 前言JDK1.8已经发布很久了,在很多企业中都已经在使用。并且Spring5、SpringBoot2.0都推荐使用JDK1.8以上版本。所以我们必须与时俱进,拥抱变化。Jdk8这个版本包含语言、编译器、库、工具和JVM等方面的十多个新特性。在本文中我们将学习以下方面的新特性:Lambda表达式函数式接口方法引用接口的默认方法和静态方法OptionalS...原创 2020-01-03 08:42:06 · 496 阅读 · 0 评论 -
自学Java基础系列-Java udp协议实现单播与广播
UDP介绍UDP是Uesr Datagram Protocol的简称,中文名称为用户数据报(包)协议。它具有几下几个特点:UDP协议是一种面向非连接的协议。 面向非连接指的是在正式通信前不必与对方先建立连接,不管对方状态就直接发送数据。UDP协议是一种不可靠的协议。对方是否可以接收到这些数据,UDP协议无法控制,言外之意就是,使用UDP协议在进行通信,有可能导致数据的丢失。U...原创 2019-11-24 09:24:22 · 644 阅读 · 0 评论 -
自学Java基础系列-线程优先级setPriority
线程调度线程的调度指的是系统为线程分配CPU使用权的过程。线程调度模型包括:分时调度:指让所有的线程轮流获得cpu的使用权,并且平均分配每个线程占用的CPU的时间片这个也比较好理解。抢占式调度模型:是指优先让优先级高的线程优先占用CPU的执行权,如果线程优先级相同,那么就随机选择一个线程,使其占用CPU的执行权。java虚拟机采用的就是抢占式调度模型。设置优先级通过如下方法对线程...原创 2019-11-24 08:59:41 · 390 阅读 · 0 评论 -
自学Java基础系列-线程中断 interrupt和stop
interrupt方法当我们调用线程的sleep方法或者join方法时,都可以让某一些线程处于等待状态,调用当前线程的interrupt()方法就可以打断该阻塞状态。interrupt方法不会让线程结束。public void interrupt(); // 中断线程的阻塞状态此方法会抛出一个InterruptedException异常。案例:演示中断sleep的等待状态线程类...原创 2019-11-24 08:46:09 · 265 阅读 · 0 评论 -
Java char和Unicode和UTF-8到底有啥联系
1、UnicodeUnicode简单来说就是一种世界标准,这个标准是要用统一全世界字符在计算机上的表示方法,比如:英语字母、阿拉伯数字、汉字、日文、韩语等。在Unicode出现之前已经有很多标准了,如:美国ASCII、西欧语言中的ISO 8859-1 、 中国的 GB 18030等,Unicode的出现就统一了全世界字符在计算机上的表示方法,也就是Unicode可以表示美国ASCII、ISO 8...转载 2019-07-23 09:03:54 · 1823 阅读 · 0 评论 -
自学Java基础系列-类加载器
1 什么是类加载器所谓类加载器就是加载类的工具,它用于加载class文件,我们写的任何程序,首先要编写源代码,然后编译,把它编译成class文件,然后class文件会从硬盘加载到内存里面去执行,装载到内存就是由类加载器去完成的。Java虚拟机与程序的生命周期介绍:当程序执行的时候,就会启动一个JVM进程,进程里面包含一个主线程去执行程序,按如下步骤执行:1:执行System.exit(in...原创 2019-10-16 08:50:04 · 176 阅读 · 0 评论