Java#网课笔记
Jafe_ZWJ
这个作者很懒,什么都没留下…
展开
-
Java日期时间API
JDK8之前获取系统当前时间:System类中的currentTimeMillis()long time = System.currentTimeMillis();//返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差。//称为时间戳System.out.println(time);java.util.Date类与java.sql.Date类 java...原创 2020-04-11 15:38:49 · 579 阅读 · 0 评论 -
String、StringBuffer和StringBuilder简述
String、StringBuffer、StringBuilder三者的对比String:不可变的字符序列;底层使用char[]存储StringBuffer:可变的字符序列;线程安全的,效率低;底层使用char[]存储StringBuilder:可变的字符序列;jdk5.0新增的,线程不安全的,效率高;底层使用char[]存储StringBuffer与StringBuilder的内...原创 2020-04-11 15:09:32 · 221 阅读 · 0 评论 -
Java中String类的使用
java.lang.String类的使用1.概述String:字符串,使用一对" "引起来表示。String声明为final的,不可被继承String实现了Serializable接口:表示字符串是支持序列化的。实现了Comparable接口:表示String可以比较大小String内部定义了final char[] value用于存储字符串数据通过字面量的方式(区别于new给一个...原创 2020-03-30 22:04:44 · 546 阅读 · 1 评论 -
Java多线程(Thread类)
简单概念理解程序(programm)概念:是为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码。进程(process)概念:程序的一次执行过程,或是正在运行的一个程序。说明:进程作为资源分配的单位,系统在运行时会为每个进程分配不同的内存区域线程(thread)概念:进程可进一步细化为线程,是一个程序内部的一条执行路径。说明:线程作为调度和执行的...原创 2020-03-25 22:02:57 · 250 阅读 · 0 评论 -
Java线程的同步机制
背景例子:创建个窗口卖票,总票数为100张.使用实现Runnable接口的方式1.问题:卖票过程中,出现了重票、错票 -->出现了线程的安全问题2.问题出现的原因:当某个线程操作车票的过程中,尚未操作完成时,其他线程参与进来,也操作车票。3.如何解决:当一个线程a在操作ticket的时候,其他线程不能参与进来。直到线程a操作完ticket时,其他线程才可以开始操作ticket。...原创 2020-03-25 21:58:47 · 169 阅读 · 0 评论 -
Java之异常处理
异常1. 异常的体系结构 * java.lang.Throwable * |-----java.lang.Error:一般不编写针对性的代码进行处理。 * |-----java.lang.Exception:可以进行异常的处理 * |------编译时异常(checked) * |-----IOException * |-----FileNotFo...原创 2020-03-23 21:59:11 · 122 阅读 · 0 评论 -
java编程英语_Day4
掌握1、for[fə®; fɔ:®]prep. 为,为了;因为;给;对于;至于;适合于 conj. 因为2、while [waɪl]conj. 虽然;然而;当……的时候3、do[duː]v. 做;干;4、break [breɪk]vi. 打破;折断;中断5、continue[kən’tɪnjuː]vt. 使…继续;6、math [mæθ]n. 数学(等于 mathemati...原创 2020-03-21 15:09:33 · 315 阅读 · 0 评论 -
Java面向对象(下)
面向对象部分分3部分进行总结:1. 面向对象(上):(传送)总结内容为,类与对象类的结构(属性、方法、构造器)封装性this2. 面向对象(中):(传送)总结内容为:继承性方法的重写super关键字对象实例化多态性3. 面向对象(下):(本编)总结内容为:static关键字final关键字abstract关键字interface关键字代码块内部类...原创 2020-03-20 19:48:09 · 125 阅读 · 0 评论 -
Java面向对象(中)
面向对象部分分3部分进行总结:1. 面向对象(上):(传送)总结内容为,类与对象类的结构(属性、方法、构造器)封装性this2. 面向对象(中):(本编)总结内容为:继承性方法的重写super关键字对象实例化多态性3. 面向对象(下):(传送)总结内容为:static关键字final关键字abstract关键字interface关键字代码块内部类...原创 2020-03-20 19:47:50 · 223 阅读 · 0 评论 -
Java面向对象(上)
面向对象部分分3部分进行总结:1. 面向对象(上):(本编)总结内容为,类与对象类的结构(属性、方法、构造器)封装性this2. 面向对象(中):(传送)总结内容为:继承性方法的重写super关键字对象实例化多态性3. 面向对象(下):(传送)总结内容为:static关键字final关键字abstract关键字interface关键字代码块内部类...原创 2020-03-20 19:47:30 · 449 阅读 · 0 评论 -
代理模式和工厂的设计模式
代理模式1. 解决的问题代理模式是Java开发中使用较多的一种设计模式。代理设计就是为其他对象提供一种代理以控制对这个对象的访问。2. 举例interface NetWork{ public void browse(); }//被代理类class Server implements NetWork{ @Override public void browse() { ...原创 2020-03-20 19:37:50 · 694 阅读 · 0 评论 -
模板方法的设计模式(abstract)
1. 解决的问题在软件开发中实现一个算法时,整体步骤很固定、通用,这些步骤已经在父类中写好了。但是某些部分易变,易变部分可以抽象出来,供不同子类实现。这就是一种模板模式。2. 举例abstract class Template{ //计算某段代码执行所需要花费的时间 public void spendTime(){ long start = System.currentT...原创 2020-03-20 19:29:36 · 253 阅读 · 0 评论 -
main()的使用说明
main()方法作为程序的入口main()方法也是一个普通的静态方法main()方法可以作为我们与控制台交互的方式。(之前:使用Scanner)如何将控制台获取的数据传给形参:String[] args?运行时:java 类名 “Tom” “Jerry” “123” “true”sysout(args[0]);//"Tom"sysout(args[3]);//"true" --&...原创 2020-03-20 19:23:45 · 479 阅读 · 0 评论 -
Java中的单例模式
1.设计模式的说明1.1 理解设计模式是在大量的实践中总结和理论化之后优的代码结构、编程风格、以及解决问题的思考方式。1.2 常用设计模式 — 23种经典的设计模式 GOF创建型模式,共5种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共7种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共11种:策略模式...原创 2020-03-20 19:13:34 · 94 阅读 · 0 评论 -
包装类的使用——装箱与拆箱
1.为什么要有包装类(或封装类)为了使基本数据类型的变量具有类的特征,引入包装类。2.基本数据类型与对应的包装类:3.需要掌握的类型间的转换:(基本数据类型、包装类、String)简易版:基本数据类型<—>包装类:JDK 5.0 新特性:自动装箱 与自动拆箱基本数据类型、包装类—>String:调用String重载的valueOf(Xxx xxx)String...原创 2020-03-20 19:09:58 · 272 阅读 · 0 评论 -
Java单元测试方法
Java中的JUnit单元测试步骤:1.中当前工程 - 右键择:build path - add libraries - JUnit 4 - 下一步2.创建Java类,进行单元测试。此时的Java类要求:① 此类是public的 ②此类提供公共的无参的构造器3.此类中声明单元测试方法。此时的单元测试方法:方法的权限是public,没返回值,没形参4.此单元测试方法上需要声明注解:...原创 2020-03-20 19:06:55 · 877 阅读 · 0 评论 -
Java中Object类的使用
1.java.lang.Object类的说明:Object类是所Java类的根父类如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object类Object类中的功能(属性、方法)就具通用性。属性:无方法:equals() / toString() / getClass() /hashCode() / clone() / finalize()...原创 2020-03-20 19:04:38 · 993 阅读 · 0 评论 -
子类对象实例化的全过程
从结果上看:继承性子类继承父类以后,就获取了父类中声明的属性或方法。创建子类的对象,在堆空间中,就会加载所父类中声明的属性。从过程上看:当我们通过子类的构造器创建子类对象时,我们一定会直接或间接的调用其父类的构造器,进而调用父类的父类的构造器,…直到调用了java.lang.Object类中空参的构造器为止。正因为加载过所的父类的结构,所以才可以看到内存中父类中的结构,子类对象才...原创 2020-03-20 18:55:19 · 606 阅读 · 0 评论 -
java中的package和import
1. package的使用1.1 使用说明:1.为了更好的实现项目中类的管理,提供包的概念2.使用package声明类或接口所属的包,声明在源文件的首行3.包,属于标识符,遵循标识符的命名规则、规范(xxxyyyzzz)、“见名知意”4.每"."一次,就代表一层文件目录。1.2 举例:举例一:某航运软件系统包括:一组域对象、GUI和reports子系统举例二:MVC设计模式...原创 2020-03-20 18:07:17 · 870 阅读 · 0 评论 -
java面向对象的封装性、继承性和多态性
封装性面向对象的特征一:封装与隐藏1.为什么要引入封装性?我们程序设计追求“高内聚,低耦合”。高内聚 :类的内部数据操作细节自己完成,不允许外部干涉;低耦合 :仅对外暴露少量的方法用于使用。隐藏对象内部的复杂性,只对外公开简单的接口。便于外界调用,从而提高系统的可扩展性、可维护性。通俗的说,把该隐藏的隐藏起来,该暴露的暴露出来。这就是封装性的设计思想。2.问题引入:当我们创建一个类...原创 2020-03-20 17:55:58 · 1246 阅读 · 0 评论 -
Arrays工具类的使用
1.理解:① 定义在java.util包下。② Arrays:提供了很多操作数组的方法。2.使用://1.boolean equals(int[] a,int[] b):判断两个数组是否相等。 int[] arr1 = new int[]{1,2,3,4}; int[] arr2 = new int[]{1,3,2,4}; boolean isEquals = Arrays.equa...原创 2020-03-20 16:46:07 · 147 阅读 · 0 评论 -
Java数组(Array)
数组(Array),是多个相同类型数据一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。数组相关的概念:数组名元素角标、下标、索引数组的长度:元素的个数数组的特点:数组是按序排列的数组属于引用数据类型的变量。数组的元素,既可以是基本数据类型,也可以是引用数据类型创建数组对象会在内存中开辟一整块连续的空间数组的长度一旦确定,就不能修改。数组...原创 2020-03-19 22:29:40 · 7863 阅读 · 0 评论 -
Scanner类的使用
如何从键盘获取不同类型的变量:需要使用Scanner类具体实现步骤:导包:import java.util.Scanner;Scanner的实例化:Scanner scan = new Scanner(System.in);调用Scanner类的相关方法(next() / nextXxx()),来获取指定类型的变量注意:需要根据相应的方法,来输入指定类型的值。如果输入的数据类型与...原创 2020-03-18 23:14:43 · 153 阅读 · 0 评论 -
Java流程控制——分支结构和循环结构
顺序结构:程序从上到下执行。分支结构:if-else if - elseswitch-case循环结构:forwhiledo-while分支结构1.if-else条件判断结构1.1.结构一:if(条件表达式){ 执行表达式}结构二:二选一if(条件表达式){ 执行表达式1}else{ 执行表达式2}结构三:n选一if(条件表达式){ 执行表达式1...原创 2020-03-18 23:10:42 · 282 阅读 · 0 评论 -
Java运算符——逻辑运算符、位运算符和三元运算符
Java中的运算符可分为以下六种:算术运算符 赋值运算符 比较运算符逻辑运算符 位运算符 三元运算符本篇总结后三种运算符,前三种运算符总结请点击:传送门。1.逻辑运算符& && | || ! ^"&“与”&&"相同与不同相同:& 与 && 的运算结果相同;当符号左边是true时,二者都会执行符号右边的运算...原创 2020-03-18 22:51:32 · 237 阅读 · 0 评论 -
Java运算符——算术运算符、赋值运算符和比较运算符
Java中的运算符可分为以下六种:算术运算符 赋值运算符 比较运算符逻辑运算符 位运算符 三元运算符本篇总结前三种运算符,后三种运算符总结请点击:传送门。1.算术运算符+ - + - * / % (前)++ (后)++ (前)-- (后)-- +【典型代码】//除号:/ int num1 = 12; int num2 = 5; int result1 = n...原创 2020-03-18 22:35:53 · 461 阅读 · 0 评论 -
进制问题
1.编程中涉及的进制及表示方式:2.二进制的使用说明:2.1 计算机底层的存储方式:所有数字在计算机底层都以二进制形式存在。2.2 二进制数据的存储方式:所有的数值,不管正负,底层都以补码的方式存储。2.3 原码、反码、补码的说明:正数:三码合一负数:3.进制间的转换:3.1 图示:3.2 图示二进制转换为十进制:3.3 图示十进制转换为二进制:3.4 二进制与八...原创 2020-03-18 22:17:13 · 379 阅读 · 1 评论 -
Java中的变量
1.变量的分类1.1 按数据类型分类详细说明:整型:byte(1字节=8bit) \ short(2字节) \ int(4字节) \ long(8字节)① byte范围:-128 ~ 127② 声明long型变量,必须以"l"或"L"结尾③ 通常,定义整型变量时,使用int型。④整型的常量,默认类型是:int型浮点型:float(4字节) \ double(8字节)...原创 2020-03-18 22:11:23 · 164 阅读 · 0 评论 -
Java中的关键字与标识符
1.java关键字的使用定义:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)特点:关键字中所字母都为小写具体哪些关键字:2.保留字:现Java版本尚未使用,但以后版本可能会作为关键字使用。具体哪些保留字:goto 、const注意:自己命名标识符时要避免使用这些保留字3.标识符的使用定义:凡是自己可以起名字的地方都叫标识符。涉及到的结构:包名、类名、接口名、变量...原创 2020-03-18 17:06:45 · 738 阅读 · 1 评论 -
Java注释和API文档
1.注释:Comment分类:单行注释://注释的内容多行注释:/* 多行注释 */文档注释:/** @author:Jafe */作用:① 对所写的程序进行解释说明,增强可读性。方便自己,方便别人② 调试所写的代码特点:①单行注释和多行注释,注释了的内容不参与编译。换句话说,编译以后生成的.class结尾的字节码文件中不包含注释掉的信息② 注释内容可以被JDK提供的工具 j...原创 2020-03-18 16:58:23 · 290 阅读 · 0 评论 -
cmd编写Java的HelloWorld
1.开发体验——HelloWorld1.1 编写创建一个java源文件:HelloWorld.javaclass HelloChina{public static void main(String[] args){System.out.println(“Hello,World!”);}}1.2 编译:javac HelloWorld.java1.3 运行:java Hell...原创 2020-03-18 16:20:32 · 1049 阅读 · 0 评论 -
Java开发环境的搭建
开发环境的搭建1.1 JDK、JRE、JVM的关系1.2 JDK的下载、安装下载:官网:https://www.oracle.com/java/technologies/javase-downloads.html安装:傻瓜式安装:JDK 、JRE(一直下一步或自己建一个文件夹进行集中管理)注意问题:安装软件的路径中不能包含中文、空格。1.3 path环境变量的配置1.3.1 为什...原创 2020-03-18 16:16:41 · 176 阅读 · 0 评论 -
java简介
1.基础常识软件:即一系列按照特定顺序组织的计算机数据和指令的集合。分为:系统软件 和 应用软件 系统软件:windows , mac os , linux ,unix,android,ios,…应用软件:word ,ppt,画图板,…人机交互方式: 图形化界面 vs 命令行方式应用程序 = 算法 + 数据结构常用DOS命令:2.计算机语言的发展迭代史第一代:机器语言第二代...原创 2020-03-18 11:22:42 · 146 阅读 · 0 评论