Java-08
1. Lambda1.1 函数式编程思想概述
在数学中,函数就是有输入量、输出量的一套计算方案,也就是“数据做操作“
面向对象思想强调“必须通过对象的形式来做事情”
函数式思想则尽量忽略面向对像的复杂语法:“强调做什么,而不是以什么形式去做”
而我们要学习的Lambda表达式就是函数式思想的体现
1.2 体验lambda表达式需求:启动一个线程,在控制台输出一句话:多线程程序启动了
方式1:
定义一个类MyRunnable:实现Runnable接口,重写run() 方法
创建MyRunnable类的对象
创建Thread类的对象,把MyRunnable的对象作为构造参数传递
启动线程
方式2:
匿名内部类的方式改进
方式3:
Lambda表达式的方式改进
12345678910111213141516171819202122232425262728293031323334//1.创建MyRunnable类package demo_01;public class MyRunnable implements Runnable{ @Override pub ...
Java-07
1. 实现多线程1.1 进程进程:是正在运行的程序
是系统进行资源分配郑调用的独立单位
每一个进程都有它自己的内存空间和系统资源
1.2 线程线程:是进程中的单个顺序控制流,是一条执行路径
单线程:一个进程如果只有一条执行路径,则称为单线程程序
多线程:一个进程如果有多条执行路径,则称为多线程程序
举例:
记事本程序
扫雷程序
1.3 多线程的实现方式(方式1)方式1:继承Thread类
定义一个类MyThread继承Thread类
在MyThread类中重写run()方法
创建MyThread类的对象
启动线程
两个小问题:
为什么要重写run() 方法?
因为run() 是用来封装被线程执行的代码
run() 方法和start() 方法的区别?
run() :封装线程执行的代码,直接调用,相当于普通方法的调用start():启动线程;然后由JVM调用此线程的run()方法
123456789101112131415161718192021222324252627282930//1.创建线程类继承Thread类package demo_01;public cl ...
Java-06
1.字节流1.1 IO流概述和分类IO流概述:
IO:输入/输出(Input/Output)
流:是一种抽象概念,是对数据传输的总称。也就是说数据在设备间的传输称为流,流的本质是数据传输
IO流就是用来处理设备间数据传输问题的常见的应用:文件复制;文件上传;文件下载
IO流分类:
按照数据的流向输入流:读数据输出流:写数据
按照数据类型来分
字节流字节输入流;字节输出流
字符流字符输入流;字符输出流
一般来说,我们说IO流的分类是按照数据类型来分的
那么这两种流都在什么情况下使用呢?
如果数据通过Window自带的记事本软件打开,我们还可以读懂里面的内容,就使用字符流,否则使用字节流。如果你不知道该使用哪种类型的流,就使用字节流
1.2 字节流写数据字节流抽象基类:
InputStream:这个抽像类是表示字节输入流的所有类的超类
OutputStream:这个抽象类是表示字节输出流的所有类的超类
子类名特点:子类名称都是以其父类名作为子类名的后缀
FileOutputStream::文件输出流用于将数据写入File
FileOutputStream(Str ...
Java-05
1. 泛型1.1泛型概述泛型:是JDK5中引入的特性,它提供了编译时类型安全检测机制,该机制允许在编译时检测倒非的类型它的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,然后在使用/调用时传入具体的类型这种参数类型可以用在类、方法和接口中,分别被称为泛型类、泛型方法、泛型接口
泛型定义格式:
<类型>:指定一种类型的格式。这里的类型可以看成是形参
<类型1,类型2.…>:指定多种类型的格式,多种类型之间用逗号隔开。这里的类型可以看成是形参
将来具体调用时候给定的类型可以看成是实参,并且实参的类型只能是引用数据类型
泛型的好处:
把运行时期的问题提前到了编译期间
避免了强制类型转换
12345678910111213141516171819202122232425262728293031323334353637package demo_01;//需求:Collection集合存储字符串并遍历import ja ...
Java_04
1. 异常1.1 异常的概述
Error:严重问题,不需要处理Exception:称为异常类,它表示程序本身可以处理的问题
RuntimeException:在编译期是不检查的,出现问题后,需要我们回来修改代码
非RuntimeException:编译期就必须处理的,否则程序不能粉通过编译,就更不能正常运行了
1.2 JVM的默认处理方案如果程序出现了问题,我们没有做任何处理,最终JVM会做默认的处理
把异常的名称,异常原因及异常出现的位置等信息输出在了控制台
程序停止执行
1.3 异常处理try…catch…
格式:
12345try{ //可能出现异常的代码}catch(异常类名 变量名){ //异常的处理代码}
执行流程
程序从try里面的代码开始执行
出现异常,会自动生成一个异常类对象,该异常对象将被提交给Java运行时系统
当Java运行时系统接收到异常对象时,会到catch中去找匹的异常类,找到后进行异常的处理
执行完毕之后,程序还可以继续往下执行
123456789101112131415161718 ...
Java_03
1. 继承1.1 继承的概述 继承是面向对象三大特征之一。可以使得子类具有父类元素的属性和方法,还可以在子类中重新定义,追加属性和方法。
继承的格式:
格式:public class 子类名 extends 父类名
案例:public class ZI extends FU{}
FU类为父类(superclass),超类,基类
ZI类为子类(subclass),派生类,扩展类
继承中子类的特点:
子类可以有父类的内容
子类也可以有自己特有的内容
Java中规定,子类继承父类,除构造方法不能继承之外,剩下都可以继承。
12345678910111213141516171819202122232425262728293031323334353637//1.创建父类package extendsDemo;public class Fu { public void show(){ System.out.println("Fu中方法被调用了"); }}//2.创建子类(子类继承父类)packag ...
Vue-1
Vue核心
1.1 Vue简介1.1.1官网
中文官网
英文官网
1.1.2 介绍与描述
动态构建用户界面的渐进式JavaScript框架
作者:尤雨溪
1.1.3 Vue的特点
遵循MVVM模式
编码简洁,体积小,运行效率高,适合移动/PC端开发
它本身只关注UI,可以引入其它第三方库开发项目
1.1.4.与其他JS框架的关联
借鉴 Angular 的模板和数据绑定技术
借鉴 React 的组件化和虚拟DOM技术
1.1.5. Vue周边库
vue-cli:vue脚手架
vue-resource
axios
vue-router:路由
vuex:状态管理
element-ui:基于vue的UI组件库(PC端)
1.2 初始Vue
想让Vue工作,就必须创建一个Vue实例,且要传入一个配置对象
root容器里的代码依然符合html规范,只不过混入了一些特殊的Vue语法
root容器里的代码被称为Vue模板
Vue实例与容器是一一对应的
真实开发中只有一个Vue实例,并且会配合着组件一起使用
中的xxx要写js表达式,且xxx可以自动读取到data中的所有属性
一旦dat ...
网站书签
ABCD PDF
极简插件
Greasy Fork(脚本)
鸭奈飞
脚本
编程那点事
网络云书签
MSDN
编程宝库
偷懒工具
在线格式转换
jQuery之家
MDN
JDK下载
编程宝库 Java jdk镜像
清华AdoptOpenJDK镜像
华为java-jdk镜像
JDK官网
以前下载JDK可以直接下载,但现在官网下载JDK需要登陆Oracle账号。
推荐网站:Oracle内部账户及密码