自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java多线程——线程通信

线程通信线程通信概念涉及方法线程死锁线程通信概念在多线程任务中,某一个线程的执行结果是另一个线程需要的资源,这样,我们就需要使两个线程的执行顺序做调整,并且使其资源能够流通。涉及方法wait():一旦执行此方法,使当前线程进入阻塞状态,并释放同步监视器notify():一旦执行此方法,就会唤醒被wait()的一个线程,若有多个线程,则唤醒优先级高的notifyAll():一旦执行此方法,唤醒所有被wait()的线程。线程通信:使用两个线程交替打印 1~100class Number im

2022-04-05 09:23:37 939 2

原创 Java多线程——线程同步

文章目录概述解决线程安全问题同步代码块同步方法锁概述在Java中,我们可以将多个线程同时运行,这样可以使得代码执行效率提高,并且在实际开发中运用多线程可以解决许多问题。但是,当多个线程同时运行,要对同一数据操作时。可能会引起线程安全问题。例如://实现多个窗口买票class Windos extends Thread{ private static int tit=100; @Override public void run() { while(tit>

2022-04-04 08:00:00 326

原创 Java多线程——线程的创建

文章目录概述线程的创建方式继承Thread类实现Runnable接口实现 Callable 接口线程池概述程序:为完成特定任务,用语言编写的一组指令的集合。即一段静态的代码。进程:是程序的一次执行过程,或者正在运行的一个程序。是一个动态的过程,有它自身的产生、存在和消亡的过程。线程:进程可进一步细化为线程,是一个程序内部的一条执行路径。1)若一个进程同一时间并行执行多个线程。就是支持多线程的2)线程作为调度和执行的单位,每个线程拥有独立的运行栈和程序计数器,线程切换的开销小3)一个进程中的多个

2022-04-02 09:25:58 341

原创 Java比较器

Java比较器概述comparable 接口comparatorcomparable 和comparator 异同概述比较器在Java中对象的比较只能使用 == 或 != 比较地址值异同。或者重写equals方法比较内容。 但是,无法使用 < > 运算符比较对象大小。Java开发中涉及对象的排序比较问题就需要使用到接口 comparable 或 comparator 。comparable 接口comparable接口的使用举例 (comparTo()方法) 自然排序1、Stri

2022-03-29 08:00:00 697

原创 Java常用类——String

String概述String的使用实例化String类型与其他类型互相转换String类常用方法概述String:使用一对“”表示字符串。在Java中属于引用类型,对字符串进行操作的类。String声明为final的,不可继承String实现了Serializable接口:表示字符串是支持序列化的。实现了Comparable接口:表示String可以比较大小String内部定义了final char[] value用于存储字符串数据、String:代表不可变的字符串序列。简称:不可变性。1、

2022-03-28 08:00:00 288

原创 Java常用类——StringBuffer StringBuilder

StringBuffer StringBuilder概述StringBuffer StringBuilde常用方法概述String StringBuffer StringBuilder异同String:不可变字符序列,底层使用char []StringBuffer: 可变字符序列,线程安全,效率低 底层使用char []StringBuilder:可变字符序列,线程不安全,效率高 底层使用char []效率对比:StringBuilder > StringBuffer > Stri

2022-03-27 09:21:39 421

原创 JavaIO流

JavaIO流IO流概述流的分类流的体系结构节点流FileReaderFileWriterFileInputStream FileOutputStream处理流转换流缓冲流IO流概述IO(Input\Output)用于处理设备之间的数据的传输。在Java中以流的方式对数据的输入和输出进行管理。在Java.io包中提供了许多”流“类和接口来进行对不同数据的操作。流的分类1、按操作数据的单位可分为字节流 和字符流2、按数据的流向划分为输入流、输出流3、按照流的角色划分为节点流、处理流流的体系结构

2022-03-22 08:00:00 619

原创 JavaIO流——File类

File类File类概述File类的使用File类的构造器File类的方法File类的获取功能File类的判断功能File类的创建和删除文件的遍历小结File类概述在Java中,当我们需要访问外存的文件,实现内存与外存的交互时就要使用IO流来实现。而IO流在使用时必须给出明确的文件目录后文件。File类的一个对象相当于或代表一个文件或文件目录。它为IO提供了要操作的具体的文件目录或文件。因此,在使用IO流之前必须提供一个实例化的File类对象。File类的使用File类的构造器实例化一个File类

2022-03-21 08:00:00 302

原创 Java泛型(二)

Java泛型(二)泛型的应用自定义泛型结构自定义泛型类与接口泛型类的构造器泛型类的继承关系泛型类的使用注意泛型方法通配符的使用泛型的应用自定义泛型结构自定义泛型类与接口在实际开发中,我们可以根据需求来自定义泛型类和接口。具体格式为:修饰符 class 类名 <T>其中便是泛型。需要注意的是,在泛型类中可能会有多个参数,此时应将参数一起放到尖括号中:<T1,T2,T3>。泛型类的构造器在定义泛型类后,其构造器不用在声明泛型。如:定义了泛型类order其构造器应该是:

2022-03-16 08:00:00 374

原创 Java泛型(一)

java泛型(一)Java泛型概述泛型是什么泛型的应用泛型与集合容器在集合中使用泛型Java泛型概述泛型是什么泛型:就是在定义类和接口时允许通过一个标识表示类中的某个属性的类型或者某个方法的返回值以及参数类型。这个类型将在使用时确定(如声明变量、创建对象)。泛型的应用泛型的应用广泛,常与集合容器一起使用。集合中使用泛型可以很好的解决元素存储的安全性问题。除此之外,泛型类、泛型接口与泛型方法也各有其作用。泛型与集合容器集合容器在设计阶段和声明阶段无法确定容器中实际存储的数据是和类型。为了更好便于

2022-03-15 08:00:00 286

原创 Java集合框架——collections工具类

文章目录collections工具类collections工具类概述collections常用方法collections工具类collections工具类概述conllections类是操作接口collecton和map的工具类。注意collections并不是collection接口的实现类。并且Collections 类中提供了多种synchronizedXxxx方法将指定集合包装成线程同步同步的集合,从而解决多线程并发访问集合时的线程安全问题。collections常用方法 publi

2022-03-13 08:40:10 2533

原创 Java集合框架——Map接口

文章目录Map接口Map接口概述Map的结构Map接口的实现类Map接口的常用方法——以HashMap为例Map接口的遍历TreeMapPropertiesMap接口Map接口概述与Set接口和List接口不同,Map接口并未继承Collection接口。 Map接口存储双列数据,Map<key,value>即key-value对的数据。Map的结构Map中的key:无序的,不可重复的 使用Set存储所有key -->要求所在的类重写equals()和HashCode() (以

2022-03-13 08:33:05 428

原创 Java集合框架——set接口

文章目录set接口set接口概述set接口的特点set接口底层添加元素过程——以HashSet为例set接口遍历方式set接口的常用方法LinkHashsetTreeSetset接口set接口概述set接口作为collection接口的子接口,用于存储无序的、不可重复的数据。其实现类有HashSet:set接口的主要实现类,线程不安全,可以存储NULL。LinkedHashSet:HashSet的子类,遍历内部数据时,可以按照添加顺序遍历。TreeSet:可以按照添加对象的属性进行排序。se

2022-03-12 08:31:32 1580

原创 Java集合框架——List接口

文章目录ListList接口概述List接口的实现类List接口的常用方法(以ArrayList为例)List接口的遍历方式ListList接口概述List接口作为Collection接口的子接口,在继承Collection接口的方法同时,添加了一些字迹的方法。List接口在Java集合框架的使用中最为频繁。List接口的实现类List接口:存放有序可重复的数据,动态数组,替换原有的数组。ArrayList:作为List接口的主要实现类,线程不安全,效率高,底层使用Object[] elemen

2022-03-06 08:36:07 389

原创 Java集合框架——Collection接口

Collection接口集合概述集合和数组一样,都是对多个数据进行存储操作的结构。都是Java容器。但是,数组在使用时,会存在一些弊端。我们使用数组存储数据时,数组的长度是固定。因此对于不确定长度的数据,我们很难使用数组存储。其次,数组提供的方法有限,对于要进行复杂操作的数据,很难实现需求。由于数组的一些局限性,在存储数据时提供了集合这个容器。集合的作用便是解决数组存储数据的弊端。Collection接口集合Collection接口下有两个子接口List接口和Set接口。在List接口下的实现

2022-03-05 09:23:02 537

原创 java面向对象——类

什么是面向对象物理类聚,分类的思维模式,思考问题首先会解决问题需要那些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索。面向对象适合处理复杂的问题,适合处理需要多人协作的问题。对于描述复杂的事物,为了从宏观上把握,从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然需要面向过程的思想去处理。面向对象的三大特性封装继承多态面向对象的本质就是:以类的方式组织代码,以对象的组织(封装)数据。类对象:具体的事物。类:是抽象

2022-03-01 11:11:22 628

原创 Java异常机制

Java异常机制什么是异常在软件运行过程中,我们可能会遇到一些这样的问题:比如程序要打开一个文件,而文件的格式不对或文件不存在;要读取数据库的数据时,数据是空的…以上遇到的问题,称之为异常(Exception)。异常是指在程序运行中遇到了各种无法预料的状况:文件找不到,非法参数等。它会影响正常程序执行的进程。简单分类检查性异常:用户的错误或问题引起的异常,在编译时不能忽略。运行时异常:可以被程序员避免的异常,在编译时被忽略。错误:错误并不是异常,错误脱离了用户掌控,在编译时也检查不到。例如

2022-02-27 11:02:12 335

原创 Java 抽象类与接口

抽象类在Java中,类的方法各种各样。如果,我们定义了一个类中的一个方法而不去实现它即不去描写方法体。那么,称这个方法为抽象方法,抽象方法所在的类为抽象类。关于抽象类:抽象方法只有名称没有实现抽象类不一定有抽象方法,但有抽象方法的类一定是抽象类抽象类不可以实例化,但可以作为父类引用抽象类中可以有普通方法和属性以及构造方法抽象类的子类必须重写实现抽象方法不然子类也只能是抽象方法用修饰符 abstract 修饰抽象方法和抽象类示例:public abstract class Action

2022-02-26 09:06:23 309

原创 java面向对象——多态

java面向对象——多态多态:

2022-02-25 16:11:44 530

原创 Java面向对象——继承

Java面向对象——继承继承继承的本质是对某一批类的抽象,以实现更好的建模。继承是一种利用已有的类来创建新的类的机制。我们可以先定义一个类,在利用继承将其非私有的所有属性和方法(构造方法除外)传递给一个新类。 那么,我们称这个新类为子类(派生类),原先的类为父类(基类)。继承的机制 : class 类名 extends (父类)类名extends 意思为扩展即子类是父类的扩展。Java中只能单继承不能多继承。示例:public class Person { protected Str

2022-02-23 20:40:04 504

原创 Java面向对象——封装

Java面向对象——封装面向对象语言的三大特征:封装、继承、多态。封装封装——数据的隐藏。在Java中我们创建类时,对类中的属性一般来说都会使其为私有。这是为了保护类中的属性确保其数据的安全性。而我们要访问类中的属性时,要通过操作其接口来实现。public class Student { private String name; private int id; private char set; public int getId() { return

2022-02-22 19:32:20 397

原创 JAVA toString方法详解

JAVA toString方法在Java中,我们经常会编写许多自定义类。在使用时,我们如何打印出这些类中实例变量?class value { private int s; public void set(int i) { this.s = i; } public int get() { return this.s; }}在上例中,我们编写了一个简单的类,该类中包含一个实例变量 s ,在使用时我们可以用方法set()、get

2022-02-21 10:50:42 50428 3

原创 JAVA 数组

Java 数组数组的定义数组是相同类型数据的有序集合。数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。其中,每一个数据称作一个数组元素,每个数据元素可以通过一个下标来访问它们。数组声明创建数组的声明格式:int a[];//不推荐使用int[] a;//常用,首选创建数组:int[] 数组名=new int[size];//size为数组长度初始化数组:int[] a={1,2,3,4,5,6};//静态初始化int[] b=new int [10];b

2022-02-17 10:47:01 460

原创 JAVA的基本控制结构

JAVA的基本控制结构在Java语言中有三种基本控制结构:顺序结构选择结构循环结构顺序结构顺序结构是JAVA语言的基本结构,也是最简单的算法结构。程序按照从上到下的顺序一行一行的执行,中间没有任何判断和跳转。例如: Scanner scanner = new Scanner(System.in); System.out.println("请输入要输出的值"); String str=scanner.nextLine(); Sy

2022-02-14 12:05:49 2311

原创 Java 运算符

Java的运算符在Java语言中支持以下运算符:算数运算符+、-、*、/、++、–、%赋值运算符=关系运算符>、<、<=、>=、!=、==逻辑运算符&&、!、位运算符&、、~、^、<<、>>、条件运算符?:扩展赋值运算符+=、-=、*=、/=算数运算符算数运算符主要功能是对数据进行运算返回结果。除了我们日常中熟知的加减乘除运算之外,计算机中还有取余运算符(

2022-02-13 11:21:06 571 1

原创 JAVA的基本数据类型转换

JAVA的基本数据类型转换Java作为一种强类型语言,在进行一些运算时需要用到类型转换。在运算时,所有的不同数据类型都转换为同一种数据类型然后进行运算。在Java中,基本数据类型转换分为强制类型转换和自动类型转换。强制类型转换:数据类型由内存容量高的数据类型转换为内存容量低的数据类型。转换格式为:(数据类型)变量名。自动转换:由系统自动的进行数据类型转换,与强制转换相反。由内存容量低的数据类型转换为内存容量高的数据类型。 int i=128; byte b=(byte

2022-02-12 10:14:45 1085

原创 JAVA 基本数据类型及其扩展

JAVA 基本数据类型及其扩展java的基本数据类型Java的数据数据类型大致可以划分为基本数据类型和引用数据类型。基本数据类型有数据类型所占字节byte一个字节(-128~127)short两个字节(-32768~32767)int四个字节(-2147483648~2147483647)long八个字节(-9223372036854775808~9223372036854775807)float四个字节(-128~127)double八个

2022-02-11 11:26:34 643

空空如也

空空如也

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

TA关注的人

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