
javase
文章平均质量分 70
Zero摄氏度
细致入微。
展开
-
Java中的异常
Java中的异常是指一个在程序执行期间发生的事件,它中断正在执行程序的正常指令流,为了能够及时有效地处理程序中的运行错误,必须使用异常类。在Java中,所有的异常都有一个共同的祖先,就是java.lang包下的Throwable类 。Throwable类有两个重要的子类:原创 2023-08-28 20:51:46 · 473 阅读 · 0 评论 -
深入理解HashMap
HashMap默认的初始化大小是16,之后每次扩充,容量变为原来的2倍,如果创建时给定了容量初值,HashMap会将其扩充为2的幂次方大小。。也就是说 HashMap 总是使用 2 的幂次方作为哈希表的大小。这是为什么呢?为了能让HashMap存取高效,尽量减少碰撞,也就是尽量要把数据分配均匀。Hash值的范围值很大,前后加起来大概40亿长度的数组,内存是放不下的 ,所以不能直接拿来用,。用之前还要先做对数组的长度取模运算,得到的余数才能用来要存放的位置也就是对应的数组下标。原创 2023-07-20 08:54:55 · 111 阅读 · 0 评论 -
Java8的主要新特性
默认方法在子类也可以被重写。interface 的设计初衷是面向抽象,提高扩展性。这也留有一点遗憾,Interface 修改的时候,实现它的类也必须跟着改。于是1.8之后,interface中修改方法,可以加static或default修饰,这样子类不用一定要实现,并且可以直接调用。原创 2023-07-17 17:14:19 · 1210 阅读 · 0 评论 -
Java网络通信理解
- 实现网络功能要靠URL类,URLConectioon类、Socket类和DatagramSocket类- 网络上的数据传送是将网络连接转换成输入输出流- DataInputStream和DataOutputStream是网络间流的载体原创 2023-07-16 14:34:05 · 619 阅读 · 0 评论 -
Java--IO流
流一般分为输入流和输出流两类,但这种划分不是绝对的。例如,一个文件,在读取它的数据时,它就是输入流;而在保存数据到文件时,它就是一个输出流原创 2023-07-10 20:52:46 · 240 阅读 · 0 评论 -
Java线程学习
程序、进程和线程的区别 - 程序 :一段静态代码,是应用程序执行的蓝本。- 进程 :程序的一次动态执行过程,对应了从代码加载、执行到执行完毕的一个完整过程。- 线程 :是进程内部单一的一个顺序控制流。一个进程在执行过程中,可以产生多个线程,每个线程有自己的生命周期。线程相当于进程中的一个个线索。原创 2023-07-07 20:53:41 · 329 阅读 · 0 评论 -
File类
- File类在java.io.*包下- 创建文件对象 - File myFile; - myFile = new File(“myfile.txt”); - myFile = new File("Mydocs","myfile.text") 两个参数分别是指定的父路径和文件名- 在Java中,将文件路径也当做文件来处理原创 2023-07-03 20:19:58 · 132 阅读 · 0 评论 -
Java数组
1、数组是用来存储一组相同 数据类型数据的数据结构。2、数组也是一种引用类型3、数组的元素可以是简单类型的数据(基本数据类型),也可以是引用类型的数据。原创 2023-07-03 16:09:50 · 137 阅读 · 0 评论 -
Java集合详解
集合,也可以说是容器。由两大接口派生而来,一个是collection,主要用于存储单一元素;另一个是map接口,主要用于存储键值对。原创 2023-06-21 23:19:15 · 543 阅读 · 0 评论 -
面向对象设计进阶
封装是指把一个对象的属性隐藏在对象内部,不允许外部对象直接访问内部信息。但是可以提供一些被外界访问的方法来操作属性。如果属性不想被外界访问,可以不提供给外界访问的方法。原创 2023-06-17 17:21:42 · 272 阅读 · 0 评论 -
String类详解
String类是final类型,因此不能被继承;2、String对象代表一组不可改变的Unicode字符序列。任何试图改变String对象的方法都会创建一个新的字符串对象。原创 2023-06-16 23:25:31 · 400 阅读 · 0 评论 -
Properties操作保存到属性文件
- Properties类实现了从名字到值的映射- Properties是存储键值对的。是hashtable(map接口下的类)接口下的类。key,value都是字符串- getProperty()方法返回一个代表该属性值的字符串- 使用load()或store()方法能从文件读入属性集或将属性集写入文件- Properties在Java.util包内原创 2023-06-15 21:05:48 · 1177 阅读 · 0 评论 -
Java多线程深入-----JUC详解
多线程进阶----JUC并发编程详解1、什么是JUC1、java.util工具包、包、分类业务:普通的线程代码 ThreadRunnable:没有返回值,效率相比Callable相对较低2、线程和进程1、进程:一个程序,程序的集合;一个进程往往可以包含多个线程,至少包含一个Java默认有2个线程:main、GC2、线程:开了一个进程(Typora),写字、自动保存(线程负责)对于Java而言,开启线程的三种方式:Thread、Runnable、CallableJava无法开启线原创 2022-03-22 13:07:38 · 831 阅读 · 0 评论 -
Java---反射机制详解
Java—反射机制详解1、概述动态语言:是一类在运行时可以改变其结构的语言主要动态语言:Object-C, C#, JavaScript,PHP,Python等静态语言:运行时结构不可变的语言,如Java,C,C++Java有一定的动态性,我们可以利用反射机制获得类似动态语言的特性。Java ReflectionReflection是Java被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及原创 2022-03-18 09:06:07 · 171 阅读 · 0 评论 -
Java---GUI编程详解
GUI编程组件:窗口弹窗面板文本框列表框按钮图片监听事件鼠标键盘事件破解工具1、简介1.1.gui的核心技术:Swing AWT1.2.不流行:界面不美观需要jre环境2、AWT2.1、Awt介绍1.包含了很多类和接口。GUI:图形用户界面编程2.元素:窗口,按钮,文本框2.2、 组件和容器1.Frame/关于Frame的一些方法package gui_study;import java.awt.*;//GUI的第一个界面public cl原创 2022-03-16 15:41:00 · 5342 阅读 · 2 评论 -
Java--网络编程详解
网络编程一.概述计算机网络:计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。网络编程的目的:数据交换、通信如何准确的定位网络上的一台主机:端口,定位到这个计算机上的某个资源二.网络通信的要素如何实现网络的通信?通信双方地址:IP端口号规则:网络通信协议三.IP地址ip地址:InetAddress唯一定位一台网络上计原创 2022-03-13 17:01:04 · 1259 阅读 · 0 评论 -
Java多线程详解
多线程详解一.多线程简介主线程:只有主线程一条执行路径多线程:多条执行路径,主线程和子线程并行交替执行进程:是执行程序的一次执行过程,是一个动态概念。是系统资源分配的单位。通常一个进程中可以包含若干个线程线程就是独立的执行路径,在程序运行时,即便自己没有创建线程,后台也会有多个线程,如主线程,gc线程对同一份资源操作时,会存在资源抢夺的问题,需要加入并发控制二.线程创建1)方法一:继承Thread类自定义线程类继承Thread类----重写run()方法,编写线程执行体----创建线原创 2022-03-11 20:59:38 · 266 阅读 · 0 评论 -
Java集合框架详解(三)
Java集合框架(三)Map接口Map实现类的特点Map:双列数据,存储key-value对的数据,类似于高中的函数,y=f(x)实现类:HashMap:作为Map的主要实现类;线程不安全的,效率高;可以存储null的key和valueLinkedHashMap:是HashMap子类,保证在遍历map元素时,可以按照添加的顺序实现遍历;因为在原有的HashMap底层结构基础上,添加了一对指针,指向前一个和后一个元素。对于频繁的遍历操作,此类执行效率高于HashMap。Tre原创 2022-02-19 16:51:57 · 266 阅读 · 0 评论 -
Java集合框架详解(二)
Java集合框架详解(二)一.foreach循环遍历集合jdk5.0新增了foreach循环,用于遍历集合、数组public void test1(){ Collection coll=new ArrayList<>(); coll.add(123); coll.add(456); coll.add(new String("Tom")); coll.add(false); //for(集合元原创 2022-02-18 16:50:57 · 132 阅读 · 0 评论 -
Java集合框架详解(1)
Java集合(一)Java集合框架概述为了方便对多个对象的操作,就要对对象进行存储,java集合就像一种容器,可以动态地把多个对象的引用放入容器中。java集合类可以用于存储数量不等的多个对象,还可以用于保存具有映射关系的关联数组。集合、数组都是对多个数据进行存储操作的结构,简称java容器。说明:此时的存储,主要指的是内存层面的存储,不涉及到持久化的存储。数组在存储多个数据方面的特点:一旦初始化以后,其长度就已经确定了数组一旦定义好,其存储数据类型确定,我们也就只能操作指定类型的数据了原创 2022-02-13 22:43:45 · 186 阅读 · 0 评论 -
Java注解
Java注解(Annotation)一.注解概述在javase中,注解的使用目的比较简单,例如标记过时的功能,忽略警告等,在javaee/android中注解占据了更重要的角色,例如用来配置应用程序的任何切面,代替javaee旧版中所遗留的繁冗代码和XML配置等未来的开发模式是基于注解的,一定程度上可以说,框架=注解+反射+设计模式注解是jdk5.0新增的功能二.常见的annotation示例示例一:生成文档相关的注解@author:标明开发该模块的作者,多个作者之间用,分割@ver原创 2022-02-11 15:29:47 · 95 阅读 · 0 评论 -
Java常用类-----枚举类详解
Java枚举类枚举类说明枚举类:类的对象只有有限个,确定的。当需要定义一组常量时,强烈建议使用枚举类如:星期:星期一到星期天 性别:男、女自定义枚举类方法一:jdk5之前,自定义枚举类package MeiJuClass;public class Test1 { public static void main(String[] args) { Season spring = Season.SPRING; System.out原创 2022-02-11 14:37:58 · 480 阅读 · 0 评论 -
Java常用类(8)
Java常用类(8)System类System类代表系统,位于java.lang包该类的构造器是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部成员变量和成员方法都是static的,所以也可以很方便的进行调用成员方法:native long currentTimeMillis():返回当前的计算机时间void exit(int status):作用是退出程序。其中status的值为0代表正常退出,非零代表异常退出void gc():作用是请求系统进行原创 2022-01-28 23:02:44 · 645 阅读 · 0 评论 -
Java常用类(7)
Java常用类(7)Instant类Instant:时间线上的一个瞬时点,可能被用来记录应用程序的事件时间戳方法测试public class InstantClass { @Test public void test1(){ //实例化 Instant instant = Instant.now(); System.out.println(instant);//2022-01-28T07:07:40.291Z,差八个小时,算的本初子原创 2022-01-28 16:37:32 · 449 阅读 · 0 评论 -
Java常用类(6)
Java常用类(6)----获取时间类java.text.SimpleDateFormat类Date类的API不易于国际化,java.text.SimpleDateFormat类是一个不与语言环境有关的方式来格式化和解析日期的具体类它允许进行 格式化:日期->文本、 解析:文本->日期格式化(日期转化为字符串):SimpleDateFormat():默认的模式和语言环境创建对象public SimpleDateFormat(String pattern):该构造方法可以用参数原创 2022-01-27 23:02:27 · 290 阅读 · 0 评论 -
String类常见题目(3)
String类相关面试题(3)题目:获取两个字符串中最大相同子串(只有一个最大相同子串)代码测试package Exercise;import org.junit.Test;public class StringClassExercise3 { /* * 题目:获取两个字符串中最大相同子串。比如: * str1=“abcwerthelloyuiodef”;str2="cvhellobnm" * 提示:将短的那个串进行长度依次递减的子串与较长的串比较原创 2022-01-27 14:49:08 · 85 阅读 · 0 评论 -
String类常见题目(2)
String类相关面试题(2)题目:获取一个字符串在另一个字符串中出现的次数,比如:获取“ab”在"abkkcadkabfkabkabskab"中出现的次数.代码测试package Exercise;import org.junit.Test;public class StringClassExercise2 { /*获取一个字符串在另一个字符串中出现的次数 * 比如:获取“ab”在"abkkcadkabfkabkabskab"中出现的次数 * *获取s原创 2022-01-27 14:28:10 · 5873 阅读 · 0 评论 -
String类常见题目(1)
String类常见题目(1)题目:将一个字符串进行反转,将字符串中指定部分进行反转,比如“abcdefg”反转为“abfedcg”代码测试:package Exercise;import org.junit.Test;public class StringClassExcerse1 { /* 将一个字符串进行反转,将字符串中指定部分进行反转,比如“abcdefg”反转为“abfedcg”方式:转换为char【】 * */ public String rev原创 2022-01-27 00:07:48 · 209 阅读 · 0 评论 -
Java常用类(5)
Java常用类(5)System类获取时间戳时间戳:System类提供public static long currentTimeMillis()用来返回当前时间与1970年1月1日0时0秒之间以毫秒为单位的时间差 public void test1(){ long time = System.currentTimeMillis(); System.out.println(time); }两个date类的使用java.util.Date类jav原创 2022-01-26 23:47:26 · 985 阅读 · 0 评论 -
Java常用类(4)
Java常用类(4)----string相关类StringBuffer和StringBuilder的介绍String、StringBuffer、StringBuilder三者的异同String:不可变的字符序列;StringBuffer:可变的字符序列;线程安全的,效率低;(多线程考虑用)StringBuilder:jdk5.0新增的。可变的字符序列;线程不安全的,效率高;相同:底层使用char[]存储public void test1(){ StringBuffer原创 2022-01-25 15:51:36 · 162 阅读 · 0 评论 -
<十一>java常用类(3)
Java常用类—String相关类(3)String与基本数据类型、包装类的转换String–>基本数据类型、包装类:调用包装类的静态方法:parseXXX(str) String str1="123"; int num= Integer.parseInt(str1); System.out.println(num);//123基本数据类型、包装类–>String:调用String重载的valueOf(xxx) String str2= Stri原创 2022-01-25 14:19:15 · 71 阅读 · 0 评论 -
<十>java常用类(2)
Java常用类—String类(二)String的常用方法1一.方法概述int length():返回字符串的长度char charAt(int index):返回某索引处的字符boolean isEmpty():判断是否是空字符串String toLowerCase():使用默认语言环境,将String中的所有字符转换为小写String toUpperCase():使用默认语言环境,将String中的所有字符转换为大写String trim():返回字符串的副本,忽略前导空白和尾部空白原创 2022-01-24 23:31:25 · 216 阅读 · 0 评论 -
<九>Java常用类-字符串相关的类(1)
Java常用类-字符串相关的类(一)String的性质String是一个final类,代表不可变的字符序列,不可被继承字符串是常量,用双引号引起来表示,它们的值在创建之后不能更改String对象的字符内容是存储在一个字符数组value[]中的*String实现了Serializable接口:表示字符串是支持序列化的* String实现了Comparable接口:表示String可以比较大小* String内部定义了final char[]value用于存储字符串数据字符串常原创 2022-01-24 21:59:28 · 112 阅读 · 0 评论 -
(八)Java异常机制详解
Java异常机制一.异常体系结构什么是异常软件程序在运行过程中,遇到的这些异常问题,就叫异常。Exception异常指程序运行中出现的不期而至的各种状况,如:文件找不到、网络连接失败、非法参数等异常发生在程序运行期间,它影响了正常的程序执行流程。简单分类 :检查性异常:用户错误或问题引起的异常,这是程序员无法预见的,这些异常在编译时不能被简单的忽略。运行时异常:是可能被程序员避免的异常,与检查性异常相反,运行时异常可以在编译时被忽略。错误ERROR:错误不是异常,而是脱离程序员控原创 2022-01-21 15:09:17 · 209 阅读 · 0 评论 -
(七)Java面向对象的三大特性详解
面向对象详解一.初识面向对象分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考,最后才对某个分类下的细节进行面向过程的思索对于描述复杂的事物,为了从宏观上把握、从整体上合理分析,我们需要使用面向对象的思路来分析整个系统,但是,具体到微观操作,仍然需要面向过程的思路去处理。本质:以类的方式组织代码,以对象的组织封装数据三大特性封装继承多态二.方法回顾和加深格式修饰符 返回值类型 方法名(…){//方法体 return返回值};修饰符原创 2022-01-20 17:23:06 · 467 阅读 · 0 评论 -
(六)Java----数组详解
Java 数组详解1.数组概述数组声明和创建数组定义:数组是相同类型数据的有序集合数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成,每一个数据称作一个数组元素,每个数组元素可以通过一个下标访问它们数组的声明和创建dataType[]arrayRefVar;//首选方法dataType arrayRefVar[];//效果相同,但不是首选方法//int []nums;声明nums=new int[10];//这里面可以存放十个int数据,创建int[]num原创 2022-01-20 17:31:39 · 112 阅读 · 0 评论 -
(五)Java-------方法详解
java方法详解1.方法的定义和调用方法的定义定义:方法是语句的集合,在一起执行一个功能,方法是解决一类问题的步骤的有序组合,方法包含于类或对象中,方法在程序中被创建,在其他地方被引用设计方法的原则:方法的本意是功能块,就是实现某个功能的语句块的集合,我们设计方法的时候,最好保持方法的原子性,即一个方法只完成一个功能方法的命名规则:首字母小写和驼峰原则//加法int sum=add(a:1,b:2);//调用方法,1和2就是实际参数System.out.println(sum);pub原创 2022-01-20 17:30:50 · 100 阅读 · 0 评论 -
(四)Java流程控制详解
java流程控制一.用户交互Scannerscanner对象Scanner类来获取用户的输入基本语法//创建一个扫描对象,用于接收键盘数据Scanner scanner=new Scanner(System.in);System.out.println("使用next方式接收:");//判断用户有没有输入字符串if (scanner.hasNext()){ //使用next方式接收 String str=scanner.next();//程序会等待用户输入完毕 Syst原创 2022-01-20 17:30:01 · 130 阅读 · 0 评论 -
(三)Java基本语法详解
Java基础语法一.注释单行注释://多行注释:/* */文档注释:/** */注释并不会被执行,养成写注释的习惯!二.标识符和关键字标识符类名、变量名以及方法名都被称为标识符首位不能是数字(所有标识符都应该以字母、美元符$,下划线_开始)不能使用关键字作为方法名和变量名标识符区分大小写不建议使用中文或者直接拼音关键字系统定义好的关键词[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9EcUX5JB-1642670912原创 2022-01-20 17:28:53 · 356 阅读 · 0 评论 -
(二)JDK安装
一.安装开发环境(JDK)1.下载jdk网址:jdk82.安装jdk3.配置环境变量我的电脑-属性-高级系统设置-环境变量新建JAVA_HOME,内容为JDK的安装路径path变量里新建%JAVA_HOME%\bin %JAVA_HOME%\jre\bin检验是否安装成功: cmd-java -version-出现jdk版本信息则安装成功二.第一个程序Hello World诞生1.新建文件夹,存放代原创 2022-01-20 17:27:46 · 194 阅读 · 0 评论