JavaSE
文章平均质量分 79
java Se
DF10F-0001A
打工人
展开
-
javaSE——集合(四)
一、Map集合1、Map接口Map用于保存具有映射关系的数据Key-Value,Map里保存着这两组数据,它们都可以使任何引用类型的数据,key和value可以是任何引用类型的数据,会封装到HashMap$Node对象中,但key不能重复,key只能有一个为null,value可以有多个null。所以通过指定的key就可以取出对应的value,常用String类作为Map的keyMap 没有继承 Collection 接口, Map 提供 key 到 value 的映射,可以通过“键”查找.原创 2022-03-03 16:20:55 · 652 阅读 · 0 评论 -
javaSE——集合(三)
HashSet类实现了Set接口,不保证Set的迭代顺序,特别是它不保证该顺序恒久不变。HashSet按Hash算法来存储集合中的元素,因此具有很好的存储和查找性能。底层数据结构是哈希表。原创 2022-03-02 21:29:44 · 330 阅读 · 0 评论 -
javaSE——集合(二)
ArrayList中维护了一个Object类型的数据elementData;当创建ArrayList对象时,如果使用的是无参构造器,则初始elementData容量为0,第一次添加时,扩容elementData为10,如需要再次扩容,则扩容elementData为原来的1.5倍;如果使用的是指定大小的构造器,则初始elementData容量为指定大小,如果需要扩容,则直接扩容elementData为原来的1.5倍原创 2021-12-15 22:53:47 · 639 阅读 · 0 评论 -
javaSE——集合(一)
集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用。原创 2021-12-14 23:24:09 · 529 阅读 · 0 评论 -
javaSE——注解
一、系统注解 注解使用@标记,后面跟上注解类型的名称。Java 语言的 java.lang 包中有 3 种内置注解,即@Override、@Deprecated 和@SuppressWarnings,这些注解用来为编译器提供指令。1、@Override @Override 用来修饰一个方法,这个方法必须是对父类中的方法的重写。如果一个方法没有重写父类中的方法,在使用这个注解时编译器将提示错误。 在子类中重写父类或接口的方法时,@Override 并不是必须加上的,但...原创 2021-11-02 18:09:01 · 217 阅读 · 0 评论 -
javaSE——Swing编程
1、Swing概述 Swing提供了比AWT更多的图形界面组件,并且Swing采用了MV(模型——视图——控制器)设计模式,Swing优势如下: Swing组件不再依赖于本地平台的GUI,无需采用各种平台的GUI交集,因此Swing提供的图形界面组件远超过AWT组件。 Swing不再依赖于本地平台GUI,因此不会产生与平台相关的bug。 Swing组件在各种平台上运行时可以保证具有相同的图形界面外观。 Swing采用了MVC设计模式 Swing在不同的..原创 2021-11-02 18:09:11 · 248 阅读 · 0 评论 -
javaSE——AWT编程(二)
四、AWT常用组件1、基本组件 Button:按钮 Canvas:画布 Checkbox:复选框组件 CheckboxGroup:用于将多个Checkbox组件合成一组 Choice:下拉式选择框组件 Frame:窗口 Label:标签类 List:列表框组件 Panel:不能单独存在基本容器类,必须放到其他容器中 Scrollbar:滑动条组件 ScrollPane:带水平及垂直滚动条的容器组件原创 2021-11-02 18:09:20 · 404 阅读 · 0 评论 -
javaSE——AWT编程(一)
一、AWT1、AWTJAVA使用AWT和Swing 类完成图形用户界面编程,AWT全称是抽象窗口工具集(Abstract Window Toolkit),它是最早的sun提供的GUI库(Graphics User Interface)图形用户界面。AWT是窗口框架,它从不同平台的窗口系统中抽取共同组件,当使用AWT编写图形界面应用时,程序仅指定了界面组件的位置和行为,并为提供真正的实现,JVM 调用操作系统本地的图形界面来创建和平台一直的对等体。2、AWT继承体系所有和AWT编程相关的类原创 2021-11-02 18:08:49 · 267 阅读 · 0 评论 -
javaSE——多线程
一、线程1、概念线程是指进程中的一个执行流程,一个进程可以由多个线程组成,即一个进程中可以同时运行多个不同的线程,它们分别执行不同的任务。当进程内的多个线程同时运行时,这种运行方式成为并发运行。2、线程和进程的区别 每个进程都有独立的代码和存储空间(进程上下文),进程切换的开销大。 线程没有独立的存储空间,而是和所属进程中其他的线程共享代码和存储空间,但每个线程有独立的运行栈和程序计数器,因此线程切换的开销较小。 多进程——在操作系统中能同时运行多个任务(程序),也称多原创 2021-11-01 12:06:48 · 158 阅读 · 0 评论 -
javaSE——网络编程
1、网络编程 InetAddress类用于封装一个IP地址,其方法有: 方法 说明 InetAddress getByName(String host) 参数 host 表示指定的主机,该方法用于在给定主机名的情况下确定主机的 IP 地址。 InetAddress getLocalHost() 创建一个表示本地主机的 InetAddress 对象 Sitring..原创 2021-11-01 12:06:39 · 95 阅读 · 0 评论 -
javaSE——异常处理和文本
异常类型 异常就是从一个异常类创建的对象,在这种情况下,异常类就是java.lang.ArithmeticException,异常被catch块所捕获,catch块中的代码块以处理异常一个异常可能是通过try中块中的throw语句直接抛出,或者调用一个可能会抛出异常的方法而抛出异常处理的优点,使方法抛出一个异常给他的调用者,并由调用者处理该异常抛出异常就是将异常从一个地方专递到另外一个地方异常捕获结构由try、catch和finaly3部分组成,其中,try语句存放的是可能发生异...原创 2021-11-01 12:06:22 · 191 阅读 · 0 评论 -
javaSE——JDBC
一、JDBC操作1、java连接MySQL步骤1、加载MySQL数据库驱动Class.forName("com.mysql.cj.jdbc.Driver");2、创建数据库连接对象通过DriverManager类创建数据库对象Connection。Connection connection = DriverManager.getConnection(String url,String user,String pass);其中MySQL数据库URL通常遵循如下.原创 2021-11-01 12:06:12 · 222 阅读 · 0 评论 -
javaSE——Java基础类库
一、Java基础类库Java以基础类库JFC(Java Foundation Class)的形式为程序员提供编程接口API,类库中的类按照用途归属于不同的包中。1、Java.lang包Java最常用的包都属于该包,程序不需要注入此包,就可以使用该包中的类,利用这些类可以设计最基本的Java程序。 (1)、String类,提供了字符串连接、比较、字符定位、字符串打印等处理方法。 (2)、StringBuffer类,提供字符串进一步的处理方法,包括子字符串处理、字符添加插入、字符替换原创 2021-11-01 12:06:03 · 945 阅读 · 0 评论 -
javaSE——反射
一、反射1、简介反射:在程序运行过程中,对于任意一个对象,都能知道这个对象所在类的所有属性和方法,都能够调用它的任何一个方法和访问它的任意一个属性,这种动态调用对象的方法及动态获取信息的功能称为java语言的反射机制 反射机制有如下功能: 在运行时判断任意一个对象所属的类 在运行时构造任意一个类的对象 在运行时判断任意一个类所具有的成员变量和方法 在运行时调用任意一个对象的方法 生成动态代理 2、优点在运行时获得类的各种内容,进行反编译..原创 2021-11-01 12:05:44 · 134 阅读 · 0 评论 -
javaSE——集合
一、集合1、集合和数组的区别(1)、长度区别 数组固定 长度可变 (2)、内容区别 数组可以是基本数据类型,也可以是引用数据类型 集合只能是引用类型-- (3)、元素内容 数组只能存储同一种类型 集合可以存储不同类型 2、collection集合的方法Collection接口是List、Set和Queue接口的父接口,该接口里定义的方法既可以用于操作Set集合,也可用于操作List和Queue集合。Collection接口里定义了如下操原创 2021-11-01 12:05:36 · 172 阅读 · 0 评论 -
javaSE——泛型
一、泛型1、定义泛型:在Java 5以后,Java引入了“参数化类型”概念,允许程序在创建集合时指定集合元素的类型。比如List<String>,表明该List只能保存字符类型的对象,java的参数化类型称为泛型。泛型的本质是为了参数化类型(在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型)。也就是说在泛型使用过程中,操作的数据类型被指定为一个参数,这种参数类型可以用在类、接口和方法中,分别被称为泛型类、泛型接口、泛型方法。import java.uti原创 2021-11-01 12:05:29 · 170 阅读 · 0 评论 -
javaSE——IO
一、流1、概述(1)、简介流是个抽象的概念,是对输入输出设备的抽象。流具有方向性,至于是输入流还是输出流则是一个相对的概念,一般以程序为参考,如果数据的流向是程序至设备,我们成为输出流,反之我们称为输入流。(2)、分类 按流向分: 输入流: 程序可以从中读取数据的流。输出流: 程序能向其中写入数据的流。 按数据传输单位分: 字节流: 以字节为单位传输数据的流字符流: 以字符为单位传输数据的流 按功能分: 节点流: 用于直接操作目标设备的流过滤流: 是原创 2021-11-01 12:05:17 · 238 阅读 · 0 评论 -
javaSE——面向对象(二)
一、包装类 作用主要有以下两方面: 编码过程中只接收对象的情况,比如List中只能存入对象,不能存入基本数据类型;比如一个方法的参数是Object时,不能传入基本数据类型,但可以传入对应的包装类 方便类型之间的转换,比如String和int之间的转换可以通过int的包装类Integer来实现 八大基本数据类型和包装类对应表 基本数据类型 包装类 byte Byte boolea...原创 2021-11-01 12:05:04 · 89 阅读 · 0 评论 -
javaSE——面向对象(一)
一、面向对象1、面向对象三大特性封装封装性是面向对象的核心思想。将对象的属性和方法封装起来,不需要让外界知道具体实现的细节,这就是封装的思想。封装可以使数据的安全性得到保证。当把过程和数据封装起来后,对数据的访问只能通过已定义的接口进行。 属性的封装。Java 中类的属性的访问权限的默认值不是 private,要想隐藏该属性或方法,就可以加 private(私有)修饰符来限制只能在类的内部进行访问。对于类中的私有属性,要对其给出一对方法(getXxxO和 setXxx0))访问私有属性,保原创 2021-10-31 18:18:26 · 188 阅读 · 0 评论 -
javaSE——字符串
一、String1、创建字符串string s = new String("新字符串")2、字符串的不变性String 对象创建后则不能被修改,是不可变的,所谓的修改其实是创建了新的对象,所指向的内存空间不同。 public class Demo { public static void main(String[] args) { String str1 = "数据结构"; String str2 = .原创 2021-10-31 17:56:49 · 128 阅读 · 0 评论 -
javaSE——主类结构
package SMK; //包名SMKpublic class smk{ //申明一个名字叫smk的类,它是公共的,在其他的类中可以使用。 public static void main(String[] args){ //创建main()方法:公共的,静态的,无返回值的,函数名为main的,参数为String类型的函数 System.out.println(" HelloWord!!! "); }} 注意:jav...原创 2021-10-31 17:40:17 · 78 阅读 · 0 评论 -
javaSE——数据类型及转换
数据类型转换 1、类型按精度从低到高排列的顺序为byte<short<int<long<float<double 2、当把一个整数赋值给一个byte、short、int、long型变量时,不可以超出这些变量的取值范围,否则必须进行强制类型转换。如: byte b =(byte)129; 隐式转换:从低级到高级类型的转换,系统将自动执行,程序员无需进行任何操作。 表达式(firstSAvg+rise)中操作数f...原创 2021-10-31 17:37:49 · 117 阅读 · 0 评论 -
javaSE——运算符
1、在java中可以把赋值运算符连在一起使用。如: x=y=z=5; 2、在进行除法运算时,0不能做除数。例如,对于语句“int a = 5/0;”,系统会抛出ArithmeticException异常 3、移位运算符适用的数据类型有byte、short、char、int、long。 4、移位可以实现整数除以或乘以2^n的效果。例如,y<<2与y*4的结果相同;y>>1的结果与y/2的结果相同。总之,一个数左移n位,...原创 2021-10-31 17:35:47 · 124 阅读 · 0 评论 -
javaSE——选择结构
1、if条件语句1、虽然if后面的复合语句块只有一条语句,当表达式的值为true时执行这些语句。若语句序列中仅有一条语句,则可以省略条件语句中的“{ }”2、对于if....else语句可以使用三元运算符对语句进行简化,如: if(a>0) b=a; else b=-a; 可以简写成: b=a>0?a:-a;3、语句只执行条件为真的命令语句,其他一句都不会执行。4、同一个switch语句,case的常量值必须原创 2021-10-31 17:34:03 · 95 阅读 · 0 评论 -
javaSE——常量与变量
1、变量 定义变量就是要告诉编译器这个变量的数据类型,这样编译器才知道需要配置多少空间给它,以及它能存放什么样的数据 int numbers; double ages; char name = 's';变量命名规则变量必须以字母,下画线“”或“$”符号开头 变量可以包括数字,但不能以数字开头 除了“”或“S”符号以外,变量名不能包含任何特殊字符 不能使用Java语言的关键字,比如int、classpublic等 变量的访问...原创 2021-10-31 17:30:37 · 170 阅读 · 0 评论 -
javaSE——循环结构
一、for循环在编程时,有时会使用for循环的特殊语法格式来实现无限循环。 语法为: for(;;) { .... } 对于这种无限循环语句可以通过break语句跳出循环。比如: for(;;) { if(x<20) break; x++; }二、while循环语句 利用一个条件来控制是否要继续反复执行这个语句 语法: whil...原创 2021-10-31 17:25:24 · 222 阅读 · 0 评论 -
javaSE——数组
数组定义:数组是由相同数据类型的数组元素组成的集合,元素按照线性顺序排列,即除第一个元素外,每一个元素都有唯一的前驱元素,除最后一个元素外,每一个元素都有唯一的后继元素(一个元素跟着一个元素)一维数组 1、声明一维数组在对new运算符进行内存分配 申明一维数组有以下两种方式:数组元素类型 数组名字[];数组元素类型[] 数组名字;2222 数组名字表示为一个合法的标识符,符号“[]”指明该变量是一个数组类型变量。单个“[]”表示要创...原创 2021-10-31 17:06:41 · 345 阅读 · 0 评论 -
javaSE——开发环境的搭建
(1)右击“计算机”图标,在快捷菜单中选择“属性”命令,将弹出“属性”对话框,在其右侧单机"高级系统设置"超链接。(2)单机“环境变量”按钮,将弹出的“环境变量”对话框,单机“系统变量”栏下的“新建”按钮,创建新的系统变量。(3)弹出“新建系统变量”对话框,分别输入变量名“JAVA_HOME”和变量值(即JDK的安装路径)。(4)在环境变量对话框内找到“path”变量,点击修改,在原变量的最前面添加“,;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;”.原创 2021-10-31 16:53:00 · 156 阅读 · 0 评论