- 博客(25)
- 收藏
- 关注
原创 day22知识点总结:线程安全问题及解决方法 线程礼让
/ synchronized (BuyTickets01.class)写成这种形式也可。当线程使用该方法,它就会把自己的cpu执行时间让掉,让给自己或其他线程执行。注:静态方法中不能使用 this 且里面的变量要是 静态变量。问:ArrayList类中add()方法是否是线程安全的?礼让即该线程的1执行完不执行2,而是让给别的线程执行1。答:是线程不安全的 因为没有加synchroniaed。解决原理:被锁代码在同一时刻只允许一个线程访问。出现线程安全问题,同一线程抢了同一张票。1.模拟多人同步爬山。...
2022-08-07 22:18:49
190
原创 day21知识点总结:线程概念、创建(2种)、启动、使用(调度)、同步、状态
概念:应用程序的执行实例(即打开一个软件,该软件就是一个进程)进程有独立的内存空间和系统资源(进程占用内存和cpu)文件 打开之前存在电脑硬盘打开之后占用内存、把消息读入内存中在任务管理器关闭程序即关闭进程概念:cpu调度和分派的基本单位(cpu几核几线程)单核:只能同时执行1个程序,该程序执行完,释放cpu资源,执行下一程序下载东西时几个任务一起执行(例如:迅雷下载可以下载多个)多线程在一个进程中同时运行了多个线程,用来完成不同的工作,称之为“多线程”。注:多个线程交替占用cpu资源,而
2022-08-07 10:34:33
192
原创 day18知识点总结:try catch finally结构 常见异常 throws throw log4j
出现异常情况:try程序块出现异常语句下面的语句不再执行,开始执行catch代码块,接着执行finally代码块,最后执行catch中的return。未出现异常的情况:先执行try程序块中的语句,再执行finally程序块中的语句,最后执行try程序块中的return。catch中存在return语句,执行finally程序块。注:Exception是所有异常的父类,即不管什么异常都可接收。与throw区别:throws声明异常,throw抛出异常。选中工程—>右键—>new—>Directory。...
2022-08-06 19:09:18
259
原创 day25知识点总结:字符输出流FileWriter 字节/字符缓冲流 转换流
字节缓冲流:BufferedInputStream、BufferedOuputStream。字符缓冲流:BufferedReader、BufferedWriter。读取文件(使用转换输入流InputStreamReader)特有方法:一次读一行 readLine()方法。运行截图(注:第一行为之前的记录)字节缓冲流复制文件耗时时间对比。使用readLine()方法读。向文件中写内容(可以指定格式)使用字节流复制同一文件。...
2022-08-03 16:22:16
414
原创 day24知识点总结:字节输入输出流 字符输入流
修改文件扩展名(将.txt修改为.java)第一步点击文件夹第二步点击查看选项第三步在“文件扩展名”选项前打√第四步点击要修改文件,点击“重命名”,将文件名改为“.java”的形式字符流就是操作文件。...
2022-08-01 22:06:45
260
原创 day20知识点总结:迭代器Iterator 泛型 foreach增强循环 HashMap集合的元素查询、清空、判断是否为空
1.在ArrayList集合中的使用。1.在ArrayList集合中使用。2.在HashMap集合中的使用。2.在HashMap集合中使用。不加toString方法。泛型的提出解决上述问题。加toString方法。将集合中的元素控制为。
2022-07-21 16:26:38
620
原创 day19知识点总结:集合框架提供的接口和方法 List、ArrayList、LinkedList、Map、HashMap
集合框架的好处:容量可扩展java集合框架提供一组 性能优良的 接口和类 他们位于java.util包中Collection、List、Set、Map是接口ArrayList、LinkedList、HashMap是实现类面试问:Collection和Collections的区别?答:Collection是接口,Collections是算法。Collection接口存储一组不唯一、无序的对象。不唯一:可以在集合里存很多个a无序:存进去之后不会按照原来的顺序List接口存储一组不唯一、有序的对
2022-07-14 18:34:54
243
原创 day16知识点总结:调用父类private变量 定义接口 接口特性 调用接口MyInterface中的方法
调用父类private变量:接口定义接口接口特性1.接口不可以new对象2.接口中只能有抽象方法,没有具体实现3.接口中的属性都是静态常量调用静态常量4.实现类可以实现多个接口(java中的多继承)5.接口中的所有方法实现类必须全部实现(因为接口中的方法都是抽象方法)调用InterfaceImpl中的方法(2种方式)a.实现类 变量名=new 实现类();b.接口 变量名=new 实现类();注:开发过程中使用第二种方法......
2022-07-07 22:49:51
408
原创 day15知识点总结:转型(向上/向下)多态遵循原则 概念 实现多态2种方式
向上转型子类转换为父类向下转型(强制类型转换)父类转换为子类,注:可结合instanseof使用运行时报错使用多态需要遵循的3个原则:1.必须有继承,子类继承父类2.父类引用指向子类对象3.子类必须重写父类方法(因为子类有不同的实现方式)概念:同一引用类型,使用不同的实例而执行不同的操作。实现多态的两种形式:1.使用父类作为方法形参实现多态(本节使用)2.使用父类作为方法返回值实现多态...
2022-07-07 17:37:18
116
原创 day17知识点总结:接口补充 异常
接口特征补充:接口中不能有构造方法。**前四章才是重点!!!!**very important!!!=================================概念:异常是指在程序的运行过程中所发生的不正常的事件,它会中断正在运行的程序。程序运行----异常----程序中断运行Java的异常处理是通过5个关键字来实现的try、catch、finally、throw、throws...
2022-07-07 16:39:34
117
原创 day11知识点总结:描述对象步骤(类、变量、方法) debug简易调试 绘制类图
如何在现实世界中描述现实世界的对象(例如:宠物)?1.找出它的种类(创建类):狗类、企鹅类2.找出它的属性(创建变量):狗的眼睛、耳朵、鼻子3.找出它的行为(创建方法):狗会吃、叫、睡觉注:null是String类型Debug调试第1箭头:step Over第2箭头:step Into两者区别:都是根据执行顺序一行一行向下走但是step Over路过方法语句不会进入方法内部step Into路过方法语句会进入方法内部点击变量名dogsbq出现的“+”号可以查看类中各变量的值,
2022-07-07 16:31:20
124
原创 day14知识点总结:getter/setter和有无参构造方法快捷创建方法 super和继承知识点的补充 4种修饰符访问权限 abstract和final修饰符
getter/setter方法快速创建方式1. 右键Generate2.点击Getter and Setter3.选中1个按住shift键不放4.最后点击OK构造方法创建快捷方式(创建无参+有参构造方法)1. 右键Generate2.点击Constructor3.若点击变量那一行 生成含有参数的构造方法(若不点击,生成无参构造方法)4.最后点击ok主要用于访问父类成员(属性和方法)super关键字只能出现在子类的方法和构造方法中(注:若出现在构造方法中,要位于第一位)===
2022-06-26 20:24:16
348
原创 day13知识点总结:static修饰符特点 封装 继承 super特点部分介绍
1.普通方法可以使用静态变量和非静态变量,但静态方法可以只能使用静态变量2.普通方法可以定义非静态变量,但不能定义静态变量 因为static是类。静态方法同理3.普通方法中可以使用this 静态方法不能使用this 和super (super后面会重点讲)4.调用static修饰的属性或方法 可以不创建对象 直接类名.属性名 或类名.方法名(),但调用非static修饰的属性或方法时 必须创建对象static修饰的方法又被称为工具方法 因为调用它时不需要实例化(new对象) eg:Math.ran
2022-06-22 19:31:30
106
原创 day12知识点总结:构造方法 方法重载
导入同一Package下的类没有import导入语句若导入别的Package下的类有import导入语句特征(6点)1.无返回值(即返回值的位置不能出现int、void、String)2.方法名字与类名相同3.不能像普通方法那样被调用4.构造方法在new对象(创建对象)时被调用5.如果没有创建,系统默认创建1个无参构造方法6.如果创建了,系统不会再创建无参构造方法无参构造方法有参构造方法一般可通过构造方法赋值方法重载特征(5点)1.普通方法可以重载,构造方法也可以重载2.方法能
2022-06-20 17:26:49
1468
原创 day10知识点总结:数组3种创建方式 创建语句在内存中的表示 十种排序方法
//数组表示数组首地址int[ ] arr1={1,2,3,4};注:其实是int[ ] arr1=new int[ ]{1,2,3,4}的简写内存表示:int[ ] arr2=new int[5];内存表示:String strs[ ]=new String[ ]{“a”,“b”,“c”};//类比int:int arr1=new int[ ]{1,2,3,4}for(int i=0;i......
2022-06-13 17:38:09
91
原创 day08知识点总结:while循环 do...while循环 debug程序调试基本操作(2箭头)及常见问题
while(循环条件){循环操作}先判断,再执行注:开发不用,面试前突击即可do{循环体}while(循环条件);//注意:结尾有分号;注:解决死循环的方法在循环体末尾加break和return都可以break是跳出整个循环 return是跳出整个方法1.设置断点(在对应代码行左击一下)2.取消断点(在对应代码行再左击一下)3.启动debug(鼠标放置在任意位置,右键“debug”)4.若不想显示"Debugger"控制台内容 可点击最小化“-”按钮5.第三个箭头(从左到右数)
2022-06-12 19:23:34
455
原创 day09知识点总结:for循环基本格式与执行顺序 break功能 countinue功能
for:知道循环次数while:不知道循环次数跳出当次循环即循环体中剩余代码不执行
2022-06-12 19:22:59
151
原创 day07知识点总结:switch基本结构 break功能 default与case执行顺序 switch()可填的数据类型 switch与if多重选择结构的相同与不同
跳出当前的switch先执行case语句 最后执行default语句注:不管语句顺序如何注:不需要背 面试时突击即可相同:都用来处理多分支语句不同:switch只能判断“等值条件判断”情况,不能判断“>
2022-06-10 16:30:47
266
原创 day06知识点总结:if选择语句 if..else if..else if...else
ctrl+shift+/1.结构:2.执行流程图1.结构:if(条件){}else{}2.执行流程图1.结构:if(条件1){}else if(条件2){}else{}例如:if(score>=80){}else if(score>=60){ //注:这里不用写成(score>=60)&&(score
2022-06-09 16:31:59
170
原创 day04知识点总结:常见赋值问题 接收输入的值 Scanner 取余 除 常见赋值语句 类型转换 关系运算符
变量名=表达式;eg:给 num2赋值int num=10;num2=num;one:先声明再赋值two:声明的同时赋值输入sc 点回车Scanner sc=new Scanner(System in);注:变量名sc可以随便取在main方法只需写一个 sc(可多次使用)Scanner sc=new Scanner(System in);int num=sc.nextInt();//输入int类型double num2=sc.nextDouble ();//输入double类型注:1.强制类
2022-06-08 19:49:34
164
原创 java基础day03知识点总结:注释 \t \n变量概念 常见数据类型 连接输出信息 变量名的命名规则
包package相当于“文件夹”eg:com.javacto.day01中的包day01的相当于com文件夹下的三级文件夹file下面的close project//单行注释/*多行注释*/操作方法:/*加“回车”/***文档注释:通常使用在类和方法上*/操作方法:/**加“回车”类名必须与源文件名一致eg:System.out.println(123);若打印输出字符串,要加双引号""eg:System.out.println(“我爱学JAVA”);若打印输出字符,要加单引号’',
2022-06-08 17:32:01
443
原创 day05知识点总结:if选择结构
#if选择结构预备知识:if(true){//条件为true则执行}if(false){//条件为false则不执行}&&:遇到false就不执行|| :遇到true就执行
2022-06-08 16:14:26
136
原创 java基础day02知识点总结
#什么是程序?对一系列动作执行过程的描述。#计算机程序让计算机执行某些操作或解决某个问题而编写的有序指令的集合。#Java的一个强大优势:跨平台性不区分系统,在哪都可运行(非跨平台性:windows平台的软件放在手机中用不了)#Java可跨平台的原因:JVM(Java Virture Machine)可将JVM看做一个翻译注:JVM不具有跨平台性#JRE(java runtime environment)java运行环境包括:JVM和运行时核心类库#JDK(java develop
2022-06-06 16:24:15
169
1
原创 java基础day01知识点总结
1.十进制、二进制的转换十进制->二进制方法:除2例如:十进制15转换为二进制1111二进制->十进制方法:各位分别乘2的n次幂再相加例如:二进制1111转换为十进制152.计算机快捷键整理:ctrl+sctrl+cctrl+vwin+R 打开dos窗口F2 重命名文件tab 移动一个制表符shift+tab tab的反操作ctrl+shift+/ 注释alt+tab 现有界面的切换win+d 与主界面相互切换3.win10系统下 显示文件扩展名点击查看->点击扩展名(
2022-06-05 23:30:12
172
原创 2020-05-31
java用正则表达式做分隔符并用scanner类解析文件并计算商品平均价格,编译结果是:平均价格:NAN,不知道哪错了,哪位大佬可以帮忙看看文本文件内容:商品列表:电视机,2567元/台洗衣机,3562元/台冰箱,6573元/台源程序:import java.io.;import java.util.;public class Example12_8 {public static void main(String[] args) { // TODO 自动生成的方法存根File file=
2020-05-31 20:57:24
857
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅