自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 java:线程2

解决线程安全的第一种方法:同步代码块同步的好处: 解决了多线程的安全问题同步的弊端: 加了一个同步代码块后,就相当于加了一把锁,每次进入同步代码块的时候都会去判断一下 无形之中,降低了我们执行效率。public class SellTicketDemo1 { public static void main(String[] args) { TicketWindow1 ticketWindow1 = new TicketWindow1(); //使用Th

2022-02-23 09:14:39 264

原创 Java:线程1

进程: 正在运行的程序,是系统进行资源分配和调用的独立单位。每一个进程都有它自己的内存空间和资源。线程: 是进程的单个顺序控制流,或者说就是一个单独执行的路径 一个进程如果只有一条执行路径,称之为单线程 一个进程如果有多条执行路径,称之为多线程 线程是包含在进程中。 举例:扫雷,360杀毒软件,百度网盘 了解三个关键词: 1、串行,指的是一个程序中所有的任务都是按照先后顺序执行的,在前一个任务还没有处理完...

2022-02-20 21:42:16 330

原创 java:Map接口

MapMap接口的概述将键映射到值的对象。 Map不能包含重复的键; 每个键可以映射到最多一个值。举例: <K,V> 键值对 1001 王宇 1002 周家祥 1001 周家祥(不允许) Map集合中,K的值不能重复Map接口与Collection接口有什么区别?1、Map接口与Collection接口是平级关机,不存在继承关系,都是属于util包下面的2、Map集合中的元素都是成对出现的,Map集合中的键是唯一的,值是可以重复的 又称之为:夫妻对3、Collect.

2022-02-20 10:37:18 635

原创 java:异常,File,递归

我们想要实现IO操作,就必须知道硬盘上的表现形式;File:文件和路径的抽象表示构造方法:public File(String pathname)通过给定的路径名来创建新的File实例,如果给定的字符串是空的字符串,则结果是空的抽象路径名。public File(String parent, String child)从父路径名字符串和子路径字符串名创建新的File实例。public File(File parent, String child)从父路径抽象名和子路径..

2022-02-19 21:57:12 585

原创 java:io流

我们想要实现IO操作,就必须知道硬盘上的表现形式;File:文件和路径的抽象表示构造方法:public File(String pathname)通过给定的路径名来创建新的File实例,如果给定的字符串是空的字符串,则结果是空的抽象路径名。public File(String parent, String child)从父路径名字符串和子路径字符串名创建新的File实例。public File(File parent, String child)从父路径抽象名和子路径..

2022-02-19 20:36:42 248

原创 Java:泛型,set集合,增强for循环、TreeSet、静态导入、可变参数

泛型:把明确的数据类型工作提前到编译时期,在创建集合的时候明确存储元素的类型。这样的做法有点像把数据类型当参数一样传递,所以泛型还有一个叫法:参数化类型泛型语句的定义格式:<引用数据类型>:注意尖括号里的数据类型只能是引用数据类型;泛型的好处:1、将我们运行时出现的问题提前到编译时期;2、不需要做强制类型的转换;3、优化了代码。消除了黄色警戒线,使代码看起来更简洁;...

2022-02-16 22:22:30 948

原创 Java:list接口,迭代器,Linklist集合

概述:继承自Collection接口1、List集合中的元素是有序的;2、List集合中的元素可以重复;3、List集合包含了索引概念;package day17;import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class List1 { public static void main(String[] args) { List li

2022-02-11 19:27:03 740

原创 Java:集合:Collection

集合的概述:集合可以存储各种各样的数据,大小,长度自身特点都可不一样。所以Java提供的数据集合也不应该是一样的,底层的数据结构也是不同的,,占用的内存空间也是不同的。不同不重要,我们只需要知道集合是可以存放数据的,不光可以存放还可以使用,比如查找数据,获取数据,删除数据等等。Collection:是集合中的顶层接口,它存放由他展开而来的继承体系。Collection:由于是一个接口,无法被实例化,我们要找它一个子类来进行接口多态方式进行实an 1、添加功能 .

2022-02-10 20:39:21 377

原创 java:包装类

包装类:需求1:有100这个数据,计算出它的二进制、八进制、十六进制;需求2:如何用代码求出int类型数据范围;为了对基本数据类型进行更多的操作,更方便的操作,Java就针对每一个数据类型提供了一个对应类类型;数据类型 byte Byte short Short int Integer long Long float Float double Double char Character boolean B

2022-02-10 18:46:58 95

原创 Java:StringBuffer

StringBuffer的特点:1、线程安全:不安全,存在同步操作同一数据的行为,效率高。安全的时候,没有同步操作,效率低。2、StringBuffer是一个可变序列。3、StringBuffer又被称为字符缓冲区,把它当成一个字符串去操作,只不过它与string相比是可以修改内容的。4、在任何时间点,它包含着一些特定的字符序列,但是可以通过某些字符序列的长度和内容。StringBuffer与String的区别:1、StringBuffer的内容和长度都是可以改变的,String却不

2022-01-22 14:11:18 9453 2

原创 Java:常用类String

StringString类是字符串,Java中所有字符串文字都被实现为此类的实例,也就是说,Java中所有带双引号的字符串都是String类的对象特点:1.字符串的值不可变,它们在创建后不可被改变;2.虽然它们的值不可变,但是它们可以被共享;3.字符串效果上相当于字符数组(char[]),但是它们实际上却是字节数组(byte[]1);String构造方法public String() 创建一个空白字符串,不含任何内容;public String(char[] chs) ...

2022-01-20 21:52:10 243

原创 Java:常用类

绝对路径:完整路径,带上盘符;相对路径:将该项目作为根目录;Object类概述:类层次结构的根类,所有的类间接或直接的继承该类;public Object()package com.one;//建议所有子类重写此方法public class ObjectDemo1 { public static void main(String[] args) { StudentsClass studentsClass=new StudentsClass(); st

2022-01-19 16:04:01 165

原创 Java:内部类

内部类概述:把类定义在其他类的内部,我们称之为内部类。内部类的特点:1、内部类可以访问外部类的成员,包括私有的;2、外部类想要访问内部类的成员,必须要创建内部类的对象;package com.one;class Outer1{ private int num=10; class Inner1{ public void show(){ System.out.println(num); } } pub

2022-01-19 09:18:10 189

原创 绝密101:import,java,packag的顺序、权限修饰符、类及其组成可用的修饰符

import,java,packag他们三个直接有没有顺序呢?packag:到达的路径,所在文件的路径,他最终以包的形式结束(他在最前面)import:导入外界你想要使用的类,它最终以你想要结束的那个类结束(在packag和class之间)要想导入某包所有的类.*(不推荐),建议30个以上去使用。class:表示定义一个类,是Java最基本的类。权限修饰符:权限修饰符: 同一类下 同一包子类中,其他类 不同包的子类 不同包的其他类 p

2022-01-17 21:53:51 373

原创 Java:接口

1、接口概述:就是一种公共的规范标准,只要符合规范标准,大家都可以通用,Java接口更多体现在对行为的抽象;2、接口的特点:1、接口用关键字interface来修饰:public interface 接口名{}2、类实现接口用implements表示:public class implements 类名{}3、接口不能实例化:想要实例化就参照多态的方式,实现类实例化,叫接口多态;多态的形式:具体类多态,抽象类多态,接口多态;多态的前提:有继承或者实现的关系,有方法的重写,有父类引

2022-01-17 21:51:46 249

原创 Java:抽象

抽象的表述:像狮子,老虎,狗等都是动物具体的实例,而动物本身就是一个抽象概念;我们把不具体的功能叫做抽象方法,而一个类中有抽象方法,我们就把这个类叫做抽象类。抽象类的特点:1、抽象方法和抽象类都要用一个关键字修饰:abstract;修饰一个类:放在class前面:abstract class 类名{}修饰一个方法:放在权限修饰符后面:public abstract void show();2、有抽象方法的类一定是抽象类,抽象类不一定有抽象方法,具体的类不可以有抽象的方法,抽象类既可以

2022-01-16 10:26:59 273 2

原创 java:final关键字

fianl:最终的意思。它可以修饰类、成员变量、成员方法。特点:1、修饰类,类不能被继承2、修饰成员变量,变量变常量,并且只能赋值一次,在构造方法完毕之前赋值即可常量字面值常量;被final修饰的变量变成自定义常量;3、final修饰成员方法,成员方法不能被重写;class Fu4{ int num1 = 10; // final int num2 = 200; final int num2;// {// num2 =

2022-01-15 21:14:36 103

原创 Java:多态

多态:同一事物不同时刻表现出的不同状态多态的前提:1、要有继承关系;2、要有方法的重写;3、要有父类应用指向子类对象向上转型父类名 f=new 子类名(....);多态访问成员的特点:1、成员变量:编译看左边,执行看左边构造方法:构造对象的时候,先访问父类中的成员方法,先对父类中的数据进行初始化2、成员方法:编译看左边,执行看右边因为成员方法存在重写,所以访问看右边3、成员方法:编译看左边,执行看左边由于被statuic修饰的成员都是与类相关的,这里不是重

2022-01-15 20:34:20 169

原创 Java:继承

格式:public class 子类名 extends父类名();public class zi extends fu();父类:也被称为基类、超类;子类:也被称为派生类;public class Zi extends fu { public void show(){ System.out.println("好好学习"); }}class fu{ public void mention(){ System.out.println(

2022-01-14 21:21:27 221 2

原创 Java:static

static关键字的特点:它可以修饰成员变量个成员方法1、随着类的加载而加载2、是优先于对象而存在的3、被类的所有对象共享举例:所有中国人的国籍信息都是中国都是一样。什么时候使用静态static关键字呢? 如果某个成员变量是被所有的对象共享的,值是一样的,那么它就应该被定义为static静态的。举例现实生活的案例: 哈罗共享单车(可以用静态的修饰) 自己的水杯(不可以用静态的修饰)4、可以通过类名直接调用一般情况下我们只要看到有一个类中有静态修饰的成员变

2022-01-13 21:36:46 136

原创 Java:封装、构造方法、API

构造方法概述:构造方法是一种特殊的方法,它的目的是创建对象格式:public class 类名{修饰符 类名(参数){}}功能:主要完成对象数据的初始化;public class Student1 { private String name; private int age; public Student1() { System.out.println("无参数类型"); } public void show()

2022-01-12 16:09:13 230

原创 Java:面向对象(类与对象)

面向对象思想引入:前面我们讲过数组,当有多个数组都需要遍历时,我们可以将遍历的代码封装到方法中,需要遍历时,就调用相应的方法即可,提高代码的复用性。在对数组遍历的基础上继续增加需求,比如获取最值,数值逆序等,同样需要将这些功能封装到相应的方法中。这样继续封装会发现方法越来越多,于是就想能不能将这些方法继续进行封装呢?通过前面的讲解我们知道类是可以存放方法的,所以,我们就考虑使用类封装来这多个方法,将来再做数组的操作时,不用去找具体的方法,先找到这个类,然后使用这个类中的方法。这就是面向对象思想的编程方式。

2022-01-11 21:31:37 435 2

原创 冒泡排序:

假设有一组无规律的数:1,3,6,2,4,10,7,5,9,8,现在我们要用冒泡排序将他们进行排列比较相邻的元素。如果第一个比第二个大,就交换它们两个;对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数;针对所有的元素重复以上的步骤,除了最后一个;比较相邻的元素。如果第一个比第二个大,就交换它们两个;对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数;针对所有的元素重复以上的步骤,除了最后一个;重复步

2022-01-11 09:03:48 172

原创 Java:二维数组

二维数组概述 我们学校每个班有很多个学生,所以,可以用数组来存储,而我们又同时有很多个大数据班。 这个也应该用一个数组来存储。如何来表示这样的数据呢?Java就提供了二维数组供我们使用。 由此可见:其实二维数组其实就是一个元素为一维数组的数组。二维数组的语句定义格式: 数据类型[][] 变量名 = new 数据类型[m][n]; (推荐这种写法) m表示这个二维数组有多少个一维数组 n表示每一个一维数组的元素个数...

2022-01-10 08:50:34 890

原创 java:数组(一维数组)

数组:现在需要统计某公司员工,例如计算平均工资,找到最高工资等;假设该公司有80人,用之前所学的方法,我们需要定义80变量来分别记住每个员工的工资,这样会显得很麻烦。为了解决这一文体,Java提供了数组给我们使用;那什么是数组呢?有什么用呢?通过上面的问题我们知道:1.数组是存储同一种数据类型多个元素的集合。也可以看成是一个容器。2.数组既可以存储基本数据类型,也可以存储引用数据类型。语句定义格式:1.数据类型[ ] 数组名:int[ ] arr;(推荐第一种方式)2.数据类

2022-01-08 22:04:13 746

原创 java:方法

方法:简单的理解:就是特定功能模块:很多语言中都有方法的定义,有着不同的叫法,有的叫函数,但是在java中函数就是方法,方法就是函数。定义方法的语句格式:修饰符 返回值类型 方法名(参数类型 参数名,参数类型 参数名................){函数体return 返回值;}名词解释: 修饰符:修饰符比较多,但是呢目前我们只需要记住一个组合 public static 返回值类型:参考我们一直使用的Scanner 定义return返回的数...

2022-01-08 08:51:08 516

原创 Java:for循环结构、while循环、do……while循环。

循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。循环语句的组成 初始化语句: 一条或者多条语句,这些语句完成一些初始化操作。判断条件语句: 这是一个boolean 表达式,这个表达式能决定是否执行循环体。 循环体语句: 这个部分是循环体语句,也就是我们要多次做的事情。 控制条件语句: 这个部分在一次循环体结束后,下一次循环判断

2022-01-07 19:37:24 830

原创 Java流程控制语句:顺序结构、选择结构(if语句、switch语句)

在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现我们要完成的功能。 流程控制语句分类 顺序结构 选择结构 循环结构顺序结构:是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。 总的来说:写在前面的先执行,写在后面的后执行public class Cherris {

2022-01-06 20:51:42 1517

原创 使用Java语言编写九九乘法口诀表

使用for循环:public class Cherris { public static void main(String[] args){ for (int i = 1;i<10;i++){ for (int j=1;j<=i;j++){ System.out.print(j+"*"+i+"="+j*i+'\t'); } S

2022-01-06 10:21:54 370

原创 Java基础:数据输入

我们目前在写程序的时候,数据值都是固定的,但是在程序开发中,数据是在变化的,所以我们把数据改为键盘录入,提高程序灵活性。如何实现键盘录入呢导包:import java.until Scanner;(定义在public class)上面。创建对象:Scanner sc = new Scanner(System.in);数据输入:int x = sc.nextInt();import java.util.Scanner;public class Cherris { public

2022-01-05 15:28:38 169

原创 Java基础:进制之间的转换,8421码,原码,反码,补码

平时的数一般都是用十进制表示的十进制:12345=10000+2000+300+40+5=1*10^4+2*10^3+3*10^2+4*10^1+5*10^0=1*10000+2*1000+3*100+4*10+5*1=10000+2000+300+40+5=12345系数:每一位上的数值;基数:原进制上的数;全次幂:从右往左开始进行编号,从0开始。其他进制转换成十进制的规律:系数乘以基数的全次幂之和。二进制的100转换为十进制:0b100=1*2^2+0*2^1+0

2022-01-05 11:01:57 1715

原创 Java基础:初识Java,了解计算机常见命令

1、计算机: 硬件:为软件运行提供物质基础 举例:CPU,硬盘,内存,显卡,鼠标 软件: a:系统软件:DOS,Windows,Linux,Unix,MAC,IOS... b:应用软件:TIM,WPS,腾讯会议 系统软件是应用软件的基础,没有系统系统软件不能有应用软件。 2、认识键盘 功能键 Tab (一般默认4个空格缩进) ...

2022-01-05 08:59:06 56

原创 Java语法:变量 ,数据类型,类型转换 ,运算符

变量 数据类型和类型转换 运算符 语句

2022-01-04 21:30:01 298

原创 IDEA的下载与安装

打开搜索引擎,搜索IDEA,找到官网也可以直接点击此链接:IntelliJ IDEA: The Capable & Ergonomic Java IDE by JetBrains点击Download进入此界面点击右边社区版下载,此版本已经足够我们用了,如果中途发现功能不够的话(正常都够用了。)我们后续可以安装插件安装的位置尽量比较大。完成后,点击finish就可以。在重新点击桌面图标打开。第一次安装idea,点击do not import settin...

2022-01-03 21:52:17 249

原创 Java基础语法

//*这是定义一个类,类是Java的最基本的单位,单位的名字叫HalloWorld。class HalloWorld{//这是被JVM能够识别的住运行方法,一个Java想要运行,必须有main方法public static void main(String[]args) {//调用Java语言提供的输出语句格式输出一句话。System.out.println("Hallo World!!");}}常量:在程序的执行过程中其值不可发生改变的量。分类:字面值...

2022-01-03 18:38:53 120

原创 path环境变量的配置

path环境变量的配置右键电脑图标点击属性,打开高级系统设置,配置环境变量。1.创建新的变量名称JAVA_HOME2.为JAVA_HOME添加变量值:JDK安装目录3.将PATH中的环境变量修改%JAVA_HOME%\bin;path与classpath的区别path:path环境变量里面记录的是可执行性文件,如javac.exe文件,对可执行文件先在当前路径去找,如果没找到就去path环境变量中配置的路径去找 配PATH的目的是可以在任意目录下找到.

2022-01-03 17:56:21 1366

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除