01 2022 档案

摘要:文本框 package com.wang.gui.lesson06; import javax.swing.*; import java.awt.*; import java.util.Vector; public class TestTextDemo01 extends JFrame { publ 阅读全文
posted @ 2022-01-31 16:40 摘星丶仙 阅读(22) 评论(0) 推荐(0) 编辑
摘要:列表 下拉框 package com.wang.gui.lesson06; import javafx.scene.control.ComboBox; import javax.swing.*; import java.awt.*; public class TestComboboxDemo01 e 阅读全文
posted @ 2022-01-30 15:44 摘星丶仙 阅读(29) 评论(0) 推荐(0) 编辑
摘要:按钮 图片按钮 package com.wang.gui.lesson05; import javax.swing.*; import java.awt.*; import java.net.URL; public class JButtonDemo01 extends JFrame { publi 阅读全文
posted @ 2022-01-30 12:38 摘星丶仙 阅读(14) 评论(0) 推荐(0) 编辑
摘要:面板 Jpanel package com.wang.gui.lesson05; import javax.swing.*; import java.awt.*; public class JpanelDemo extends JFrame { public JpanelDemo(){ Contai 阅读全文
posted @ 2022-01-29 22:49 摘星丶仙 阅读(15) 评论(0) 推荐(0) 编辑
摘要:标签 label new JLabel("xxx"); package com.wang.gui.lesson04; import javax.swing.*; import java.awt.*; //图标,需要实现类,Frame继承 public class IconDemo extends J 阅读全文
posted @ 2022-01-29 22:47 摘星丶仙 阅读(17) 评论(0) 推荐(0) 编辑
摘要:弹窗 JDialog,用来被弹出,默认就有关闭事件! package com.wang.gui.lesson04; import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt. 阅读全文
posted @ 2022-01-29 22:16 摘星丶仙 阅读(18) 评论(0) 推荐(0) 编辑
摘要:Swing 3.1窗口 package com.wang.gui.lesson04; import javax.swing.*; import java.awt.*; public class JFrameDemo { //init():初始化 public void init(){ JFrame 阅读全文
posted @ 2022-01-29 15:13 摘星丶仙 阅读(24) 评论(0) 推荐(0) 编辑
摘要:package com.wang.gui.lesson02; import java.awt.*; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; //键 public class TestKeyListener { 阅读全文
posted @ 2022-01-29 15:00 摘星丶仙 阅读(19) 评论(0) 推荐(0) 编辑
摘要:package com.wang.gui; import java.awt.*; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; public class TestWindow { public stat 阅读全文
posted @ 2022-01-29 14:51 摘星丶仙 阅读(12) 评论(0) 推荐(0) 编辑
摘要:package com.wang.gui; import java.awt.*; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.util.ArrayList; import java 阅读全文
posted @ 2022-01-29 14:43 摘星丶仙 阅读(15) 评论(0) 推荐(0) 编辑
摘要:package com.wang.gui; import java.awt.*; public class TestPaint { public static void main(String[] args) { new MyPaint().loadFrame(); } } class MyPain 阅读全文
posted @ 2022-01-28 17:40 摘星丶仙 阅读(14) 评论(0) 推荐(0) 编辑
摘要:oop原则:组合,大于继承! class A extends B{ } class A{ public B{ } } package com.wang.gui; import java.awt.*; import java.awt.event.ActionEvent; import java.awt 阅读全文
posted @ 2022-01-28 17:32 摘星丶仙 阅读(11) 评论(0) 推荐(0) 编辑
摘要:package com.wang.gui; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.lang.reflect.Field; publ 阅读全文
posted @ 2022-01-28 16:46 摘星丶仙 阅读(18) 评论(0) 推荐(0) 编辑
摘要:package com.wang.gui; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; 阅读全文
posted @ 2022-01-28 16:28 摘星丶仙 阅读(11) 评论(0) 推荐(0) 编辑
摘要:布局管理器 流式布局 东西南北中 表格布局 public class TestFlowLayout { public static void main(String[] args) { Frame frame = new Frame(); //组件——按钮 Button button1 = new 阅读全文
posted @ 2022-01-28 15:31 摘星丶仙 阅读(12) 评论(0) 推荐(0) 编辑
摘要://Panel可以看成是一个空间,就是不能单独存在 public class TestPanel { public static void main(String[] args) { Frame frame = new Frame(); //布局的概念 Panel panel = new Panel 阅读全文
posted @ 2022-01-28 13:26 摘星丶仙 阅读(130) 评论(0) 推荐(0) 编辑
摘要://GUI的第一个界面 public class TestFrame { public static void main(String[] args){ //Frame,JDK,看源码 Frame frame = new Frame("我的第一个Java图像界面窗口"); //需要设置可见性 w h 阅读全文
posted @ 2022-01-28 13:18 摘星丶仙 阅读(15) 评论(0) 推荐(0) 编辑
摘要:包含了很多类和接口!GUI! 元素:窗口、按钮、文本框 阅读全文
posted @ 2022-01-28 13:03 摘星丶仙 阅读(37) 评论(0) 推荐(0) 编辑
摘要:怎么学? 这是什么? 它怎么玩? 该如何去在我们平时运用? 组件 窗口 弹窗 面板 文本框 列表框 按钮 图片 监听事件 鼠标 键盘事件 破解工具 简介 GUI的核心技术:Swing AWT 为什么很少使用GUI? 因为界面不美观 需要jre环境! 为什么我们要学习? 可以写出自己心中想要的一些小工 阅读全文
posted @ 2022-01-27 17:16 摘星丶仙 阅读(13) 评论(0) 推荐(0) 编辑
摘要:处理流之五:数据流 为了方便地操作Java语言的基本数据类型和String的数据,可以使用数据流。 数据流有两个类:(用于读取和写出基本数据类型,String类的数据) DataInputStream和DataOutputStream 分别“套装”在InputStream和OutputStream子 阅读全文
posted @ 2022-01-27 15:48 摘星丶仙 阅读(42) 评论(0) 推荐(0) 编辑
摘要:处理流之四:打印流 实现将基本数据类型的数据格式转化为字符串输出 打印流:PrintStream和PrintWriter - 提供了一系列重载的print()和println()方法,用于多种数据类型的输出 - PrintStream和PrintWriter的输出不会抛出IOException异常 阅读全文
posted @ 2022-01-27 15:31 摘星丶仙 阅读(17) 评论(0) 推荐(0) 编辑
摘要:处理流之三:标准输入、输出流 System.in和System.out分别代表了系统标准的输入和输出设备 默认输入设备是:键盘,输出设备是:显示器 System.in的类型是InputStream System.out的类型是PrintStream,其是OutputStream的子类,FilterO 阅读全文
posted @ 2022-01-27 13:17 摘星丶仙 阅读(117) 评论(0) 推荐(0) 编辑
摘要:处理流之二:转换流 补充:字符编码 编码表的由来 计算机只能识别二进制数据,早期由来是电信号。为了方便应用计算机,让它可以识别各个国家的文字。就将各个国家的文字用数字来表示,并一一对应,形成一张表。这就是编码表。 常见的编码表 ASCII:美国标准信息交换码。 用一个字节的7位可以表示。 ISO88 阅读全文
posted @ 2022-01-27 12:53 摘星丶仙 阅读(69) 评论(0) 推荐(0) 编辑
摘要:/* 综合使用InputStreamReader和OutputStreamWriter */ @Test public void test2() throws IOException { //1.造文件、造流 File file1 = new File("dbcp.txt"); File file2 阅读全文
posted @ 2022-01-27 12:35 摘星丶仙 阅读(17) 评论(0) 推荐(0) 编辑
摘要:处理流之二:转换流 /** * 处理流之二:转换流的使用 * 1.转换流:属于字符流 * InputStreamReader:将一个字节的输入流转换为字符的输入流 * OutputStreamWriter:将一个字符的输出流转换为字节的输出流 * * 2.作用:提供字节流与字符流之间的转换 * * 阅读全文
posted @ 2022-01-27 12:28 摘星丶仙 阅读(17) 评论(0) 推荐(0) 编辑
摘要:练习 实现图片加密操作。 提示 int b = 0; while((b = fis.read()) != -1){ fos.write(b^5); } //图片的加密 @Test public void test1(){ FileInputStream fis = null; FileOutputS 阅读全文
posted @ 2022-01-26 18:04 摘星丶仙 阅读(12) 评论(0) 推荐(0) 编辑
摘要:/** * 处理流之一:缓冲流的使用 * * 1.缓冲流 * BufferedInputStream * BufferedOutputStream * BufferedReader * BufferedWriter * * 2.作用:提高流的读取、写入的速度 * 提高读写速度的原因:内部提供了一个缓 阅读全文
posted @ 2022-01-25 22:09 摘星丶仙 阅读(31) 评论(0) 推荐(0) 编辑
摘要:/** * 处理流之一:缓冲流的使用 * * 1.缓冲流 * BufferedInputStream * BufferedOutputStream * BufferedReader * BufferedWriter * * 2.作用:提高流的读取、写入的速度 * 提高读写速度的原因:内部提供了一个缓 阅读全文
posted @ 2022-01-25 21:56 摘星丶仙 阅读(28) 评论(0) 推荐(0) 编辑
摘要:import org.junit.Test; import java.io.*; /** * 处理流之一:缓冲流的使用 * * 1.缓冲流 * BufferedInputStream * BufferedOutputStream * BufferedReader * BufferedWriter * 阅读全文
posted @ 2022-01-25 21:20 摘星丶仙 阅读(15) 评论(0) 推荐(0) 编辑
摘要:/* 实现对图片的复制操作 */ @Test public void testFIleInputOutputStream(){ FileInputStream fis = null; FileOutputStream fos = null; try { // File srcFile = new F 阅读全文
posted @ 2022-01-25 20:59 摘星丶仙 阅读(14) 评论(0) 推荐(0) 编辑
摘要:import org.junit.Test; import java.io.File; import java.io.FileInputStream; import java.io.IOException; /** * 测试FileInputStream和FileOutputStream的使用 * 阅读全文
posted @ 2022-01-25 20:48 摘星丶仙 阅读(35) 评论(0) 推荐(0) 编辑
摘要:/* 从内存中写出数据到硬盘的文件里 说明: 1.输出操作,对应的File可以不存在,并不会报异常 2. FIle对应的硬盘中的文件如果不存在,在输出的过程中,会自动创建此文件。 File对应的硬盘中的文件如果存在: 如果流使用的构造器是:FileWriter(file, false)/ FIleW 阅读全文
posted @ 2022-01-24 20:12 摘星丶仙 阅读(27) 评论(0) 推荐(0) 编辑
摘要://对read()操作升级:使用read的重载方法 @Test public void testFileReader1() throws IOException { FileReader fr = null; try { //1. File类的实例化 File file = new File("he 阅读全文
posted @ 2022-01-24 20:00 摘星丶仙 阅读(34) 评论(0) 推荐(0) 编辑
摘要:/* 将io_下的hello.txt文件内容读入程序中,并输出到控制台 说明点: 1.read()的理解:返回读入的一个字符。如果达到文件末尾,返回-1 2.异常的处理:为了保证流资源一定可以执行关闭操作。需要使用try-catch-finally处理 3.读入的文件一定要存在,否则就会报FileN 阅读全文
posted @ 2022-01-20 21:35 摘星丶仙 阅读(33) 评论(0) 推荐(0) 编辑
摘要:IO流原理及流的分类 Java IO原理 I/O是Input/Output的缩写,I/O技术是非常实用的技术,用于处理设备之间的数据传输。如读/写文件,网络通讯等。 Java程序中,对于数据的输入/输出操作以**“流(Stream)”**的方式进行。 java.io包下提供了各种“流”类和接口,用以 阅读全文
posted @ 2022-01-20 19:51 摘星丶仙 阅读(51) 评论(0) 推荐(0) 编辑
摘要:IO流 File类的使用 File类的理解 File类的一个对象,代表一个文件或一个文件目录(俗称:文件夹) File类声明在java.io包下 FiLe类中涉及到关于文件或文件目录的创建、删除、重命名、修改时间、文件大小等方法,并未涉及到写入或读取文件内容的操作。如果需要读取或写入文件内容,必须使 阅读全文
posted @ 2022-01-20 19:28 摘星丶仙 阅读(25) 评论(0) 推荐(0) 编辑
摘要:泛型 自定义泛型类、泛型接口、泛型方法 注意点 阅读全文
posted @ 2022-01-20 16:08 摘星丶仙 阅读(10) 评论(0) 推荐(0) 编辑
摘要:泛型 泛型的理解 泛型的概念 所谓泛型,就是允许在定义类、接口时通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型。这个类型参数将在使用时(例如,继承或实现这个接口,用这个类型声明变量、创建对象时确定(即传入实际的类型参数,也称为类型实参))。 泛型的引入背景 集合容器类在设计阶段/ 阅读全文
posted @ 2022-01-20 15:54 摘星丶仙 阅读(35) 评论(0) 推荐(0) 编辑
摘要:下面的代码输出什么? 已知:Person类按照id和name重写了hashCode和equals方法,问下面代码输出什么? import java.util.HashSet; import java.util.Objects; public class Homework05 { public sta 阅读全文
posted @ 2022-01-20 13:32 摘星丶仙 阅读(12) 评论(0) 推荐(0) 编辑
摘要:简单题 试分析HashSet和TreeSet分别如何实现去重的 HashSet的去重机制: hashCode() + equals(),底层先通过存入对象,进行运算得到一个hash值,通过hash值得到对应的索引,如果发现table索引所在的位置,没有数据,就直接存放,如果有数据,就进行equals 阅读全文
posted @ 2022-01-20 12:57 摘星丶仙 阅读(11) 评论(0) 推荐(0) 编辑
摘要:编程题 按要求完成下列任务 使用HashMap类实例化一个Map类型的对象m,键(String)和值(int)分别用于存储员工的姓名和工资,存入数据如下:jack—650元; tom—1200元; smith——2900元; 将jack的工资更改为2600元 为所有员工工资加薪100元; 遍历集合中 阅读全文
posted @ 2022-01-19 22:10 摘星丶仙 阅读(14) 评论(0) 推荐(0) 编辑
摘要:编程题 使用ArrayList完成对对象Car {name, price}的各种操作 add:添加单个元素 remove:删除指定元素 contains:查找元素是否存在 size:获取元素个数 isEmpty:判断是否为空 clear:清空 addAll:添加多个元素 containsAll:查找 阅读全文
posted @ 2022-01-19 21:49 摘星丶仙 阅读(13) 评论(0) 推荐(0) 编辑
摘要:集合训练 ##编程题 按要求实现: 封装一个新闻类,包含标题和内容属性,提供get、set方法,重写toString方法,打印对象时只打印标题; 只提供一个带参数的构造器,实例化对象时,只初始化标题;并且实例化两个对象:新闻一:新冠确诊病例超千万,数百万印度教信徒赴恒河“圣浴”引民众担忧 新闻二:男 阅读全文
posted @ 2022-01-19 21:24 摘星丶仙 阅读(19) 评论(0) 推荐(0) 编辑
摘要:Collections工具类 Collections工具类介绍 Collections是一个操作 Set、List和Map等集合的工具类 Collections 中提供了一系列静态的方法对集合元素进行排序、查询和修改等操作 排序操作:(均为static方法) reverse(List):反转 Lis 阅读全文
posted @ 2022-01-19 20:26 摘星丶仙 阅读(26) 评论(0) 推荐(0) 编辑
摘要:总结-开发中如何选择集合实现类 在开发中,选择什么集合实现类,主要取决于业务操作特点,然后根据集合实现类特性进行选择,分析如下: 先判断存储的类型(一组对象[单列]或一组键值对[双列]) 一组对象[单列]:Collection接口 允许重复:List 增删多:LinkedList[底层维护了一个双向 阅读全文
posted @ 2022-01-19 18:48 摘星丶仙 阅读(11) 评论(0) 推荐(0) 编辑
摘要:Map接口实现类-Properties 基本介绍 Properties类继承自Hashtable类并且实现了Map接口,也是使用一种键值对的形式来保存数据。 他的使用特点和Hashtable类似 Properties还可以用于从 xxx.properties 文件中,加载数据到Properties类 阅读全文
posted @ 2022-01-19 18:32 摘星丶仙 阅读(81) 评论(0) 推荐(0) 编辑
摘要:Map接口实现类-Hashtable HashTable的基本介绍 存放的元素是键值对:即K-V hashtable的键和值都不能为null hashTable使用方法基本上和HashMap一样 hashTable是线程安全的,hashMap是线程不安全的 Hashtable和HashMap对比 阅读全文
posted @ 2022-01-19 16:13 摘星丶仙 阅读(22) 评论(0) 推荐(0) 编辑
摘要:Map接口实现类-HashMap HashMap底层机制 扩容机制[和HashSet相司] HashMap底层维护了Node类型的数组table,默认为null 当创建对象时,将加载因子(loadfactor)初始化为0.75. 当添加key-val时,通过key的哈希值得到在table的索引。然后 阅读全文
posted @ 2022-01-19 15:11 摘星丶仙 阅读(30) 评论(0) 推荐(0) 编辑
摘要:Map接口实现类-HashMap HashMap小结 Map接口的常用实现类: HashMap、Hashtable和Properties。 HashMap是 Map 接口使用频率最高的实现类。 HashMap是以 key-val对的方式来存储数据(HashMap$Node类型) key不能重复,但是 阅读全文
posted @ 2022-01-19 14:59 摘星丶仙 阅读(13) 评论(0) 推荐(0) 编辑
摘要:Map接口和常用方法 使用HashMap添加3个员工对象,要求 键:员工id 值:员工对象 并遍历显示工资>18000的员工(遍历方式最少两种) 员工类:姓名、工资、员工id import java.util.HashMap; import java.util.Iterator; import ja 阅读全文
posted @ 2022-01-19 14:07 摘星丶仙 阅读(39) 评论(0) 推荐(0) 编辑
摘要:Map接口和常用方法 Map接口遍历方法 containsKey:查找键是否存在 keySet:获取所有的键 entrySet:获取所有关系 values:获取所有的值 import java.util.*; @SuppressWarnings({"all"}) public class MapFo 阅读全文
posted @ 2022-01-18 15:52 摘星丶仙 阅读(50) 评论(0) 推荐(0) 编辑
摘要:Map接口和常用方法 Map体系的继承图 Map接口常用方法 put:添加 remove:根据健删除映射关系 get: 根据键获取值 size:获取元素个数 isEmpty:判断个数是否为0 clear:清除 containsKey:查找键是否存在 import java.util.HashMap; 阅读全文
posted @ 2022-01-18 15:24 摘星丶仙 阅读(26) 评论(0) 推荐(0) 编辑
摘要:Map接口和常用方法 Map接口实现类的特点 注意:是JDK8的Map接口特点 Map与Collection并列存在。用于保存具有映射关系的数据:Key-Value Map中的 key 和 value可以是任何引用类型的数据,会封装到HashMap$Node对象中 Map中的key 不允许重复,原因 阅读全文
posted @ 2022-01-18 13:51 摘星丶仙 阅读(47) 评论(0) 推荐(0) 编辑
摘要:Set接口实现类-LinkedHashSet Car类(属性:name,price),如果name和price一样,则认为是相同元素,就不能添加。 import java.util.LinkedHashSet; import java.util.Objects; @SuppressWarnings( 阅读全文
posted @ 2022-01-18 12:38 摘星丶仙 阅读(22) 评论(0) 推荐(0) 编辑
摘要:Set接口实现类——LinkedHashSet LinkedHashSet的全面说明 LinkedHashSet是HashSet的子类 LinkedHashSet底层是一个LinkedHashMap,底层维护了一个数组+双向链表 LinkedHashSet根据元素的hashCode值来决定元素的存储 阅读全文
posted @ 2022-01-17 21:49 摘星丶仙 阅读(145) 评论(0) 推荐(0) 编辑
摘要:Set接口实现类——HashSet 定义一个Employee类,该类包含:private成员属性name,sal,birthday(MyDate类型),其中birthday为MyDate类型(属性包括:year,month,day),要求: 创建3个Employee放入HashSet中 当name和 阅读全文
posted @ 2022-01-17 21:00 摘星丶仙 阅读(82) 评论(0) 推荐(0) 编辑
摘要:Set接口实现类——HashSet 定义一个Employee类,该类包含:private成员属性name,age。要求: 创建3个Employee放入HashSet中 当name和age的值相同时,认为是相同员工,不能添加到HashSet集合中 import java.util.HashSet; i 阅读全文
posted @ 2022-01-17 20:44 摘星丶仙 阅读(16) 评论(0) 推荐(0) 编辑
摘要:Set接口实现类——HashSet HashSet底层机制说明 HashSet底层是HashMap 添加一个元素时,先得到hash值——会转成->索引值 找到存储数据表table,看这个索引位置是否已经存放有数据 如果没有,直接加入 如果有,调用equals比较,如果相同,就放弃添加,如果不相同,则 阅读全文
posted @ 2022-01-16 21:26 摘星丶仙 阅读(159) 评论(0) 推荐(0) 编辑
摘要:Set接口实现类-HashSet HashSet底层机制说明 HashSet底层是HashMap,HashMap底层是(数组+链表+红黑树) @SuppressWarnings({"all"}) public class HashSetStructure { public static void m 阅读全文
posted @ 2022-01-16 20:49 摘星丶仙 阅读(14) 评论(0) 推荐(0) 编辑
摘要:#Set接口实现类-HashSet HashSet的全面说明 HashSet实现了Set接口 HashSet实际上是HashMap 可以存放null值,但是只能有一个null HashSet不保证元素是有序的,取决于hash后,在确定索引的结果。(即不保证存放元素的顺序和取出的顺序一致) 不能有重复 阅读全文
posted @ 2022-01-16 20:30 摘星丶仙 阅读(360) 评论(0) 推荐(0) 编辑
摘要:Set接口和常用方法 Set接口基本介绍 无序(添加和取出的顺序不一致),没有索引 不允许重复元素,所以最多包含一个null JDK API中Set接口的实现类有: Set接口的常用方法 和List接口一样, Set接口也是Collection的子接口,因此,常用方法和Collection接口一样. 阅读全文
posted @ 2022-01-16 19:55 摘星丶仙 阅读(80) 评论(0) 推荐(0) 编辑
摘要:ArrayList 和LinkedList的比较 如何选择ArrayList 和LinkedList: 如果我们改查的操作多,选择ArrayList 如果我们增删的操作多,选择LinkedList 一般来说,在程序中,80%-90%都是查询,因此大部分情况下会选择ArrayList 在一个项目中,根 阅读全文
posted @ 2022-01-16 16:03 摘星丶仙 阅读(16) 评论(0) 推荐(0) 编辑
摘要:LinkedList底层结构 LinkedList的全面说明 LinkedList底层实现了双向链表和双端队列特点 可以添加任意元素(元素可以重复),包括null 线程不安全,没有实现同步 LinkedList的底层操作机制 LinkedList底层维护了一个双向链表. LinkedList中维护了 阅读全文
posted @ 2022-01-16 15:10 摘星丶仙 阅读(28) 评论(0) 推荐(0) 编辑
摘要:Vector的基本介绍 Vector类的定义说明 Vector底层也是一个对象数组,protected Object[] elementData; Vector是线程同步的,即线程安全,Vector类的操作方法带有synchronized public synchronized E get(int 阅读全文
posted @ 2022-01-16 13:47 摘星丶仙 阅读(13) 评论(0) 推荐(0) 编辑
摘要:ArrayList底层结构和源码分析 ArrayList的注意事项 permits all elements, including null ,ArrayList可以加入null,并且多个 ArrayList是由数组来实现数据存储的 ArrayList基本等同于Vector,除了ArrayList是 阅读全文
posted @ 2022-01-15 22:21 摘星丶仙 阅读(41) 评论(0) 推荐(0) 编辑
摘要:List接口和常用方法 List的三种遍历方式[ArrayList, LinkedList,Vector] 方式一:使用iterator Iterator iter = col.iterator(); while(iter.hasNext()){ Object o = iter.next(); } 阅读全文
posted @ 2022-01-15 18:49 摘星丶仙 阅读(134) 评论(0) 推荐(0) 编辑
摘要:List接口和常用方法 List接口基本介绍 List接口是Collection接口的子接口 List集合类中元素有序(即添加顺序和取出顺序一致)、且可重复 List集合中的每个元素都有其对应的顺序索引,即支持索引。 List容器中的元素都对应一个整数型的序号记载其在容器中的位置,可以根据序号存取容 阅读全文
posted @ 2022-01-15 16:57 摘星丶仙 阅读(53) 评论(0) 推荐(0) 编辑
摘要:collection接口和常用方法 Collection接口遍历对象方式2-for循环增强. 增强for循环,可以代替iterator迭代器,特点:增强for就是简化版的iterator,本质一样。只能用于遍历集合或数组。 基本语法 for(元素类型 元素名:集合名或数组名){ 访问元素 } 案例演 阅读全文
posted @ 2022-01-15 15:50 摘星丶仙 阅读(25) 评论(0) 推荐(0) 编辑
摘要:Collection接口和常用方法 Collection接口遍历元素方式1-使用lterator(迭代器) 基本介绍 Iterator对象称为迭代器,主要用于遍历Collection 集合中的元素。 所有实现了Collection接口的集合类都有一个iterator()方法,用以返回一个实现了lte 阅读全文
posted @ 2022-01-15 10:46 摘星丶仙 阅读(66) 评论(0) 推荐(0) 编辑
摘要:Collection接口和常用方法 Collection接口实现类的特点 public interface Collection extends Iterable collection实现子类可以存放多个元素,每个元素可以是Object 有些Collection的实现类,可以存放重复的元素,有些不可 阅读全文
posted @ 2022-01-14 22:19 摘星丶仙 阅读(25) 评论(0) 推荐(0) 编辑
摘要:集合主要是两组(单列集合,双列集合) Collection接口有两个重要的子接口 List Set,他们的实现子类都是单列集合 Map接口的实现子类是双列集合,存放的K-V public static void main(String[] args) { ArrayList arrayList = 阅读全文
posted @ 2022-01-14 21:46 摘星丶仙 阅读(18) 评论(0) 推荐(0) 编辑
摘要:集合的理解和好处 数组的不足之处: 长度开始时必须指定,而且一旦指定,不能更改 保存的必须为同一类型的元素 使用数组进行增加/删除元素的示意代码-比较麻烦 写出Person数组扩容示意代码。 Person[] pers = new Person[1];//大小是1 per[0] = new Pers 阅读全文
posted @ 2022-01-14 21:25 摘星丶仙 阅读(41) 评论(0) 推荐(0) 编辑
摘要:总结 内部类: 在一个类的内部再定义一个完整的类。 成员内部类、静态内部类、局部内部类、匿名内部类。 Object类: 所有类的直接或间接父类,可存储任何对象。 包装类: 基本数据类型所对应的引用数据类型,可以使Object统一所有数据。 String类: 字符串是常量,创建之后不可改变,字面值保存 阅读全文
posted @ 2022-01-14 21:01 摘星丶仙 阅读(10) 评论(0) 推荐(0) 编辑
摘要:System类 System系统类,主要用于获取系统的属性数据和其他操作,构造方法私有的。 方法名——————说明 static void arraycopy(...)——————复制数组 static long currentTimeMillis()——————获取当前系统时间,返回的是毫秒值 s 阅读全文
posted @ 2022-01-14 20:37 摘星丶仙 阅读(12) 评论(0) 推荐(0) 编辑
摘要:SimpleDateFormat类 SimpleDateFormat是一个以与语言环境有关的方式来格式化和解析日期的具体类。 进行格式化(日期->文本)、解析(文本->日期)。 常用的时间模式字母 字母——日期或时间——示例 y——年——2019 M——年中月份——08 d——月中天数——10 H— 阅读全文
posted @ 2022-01-14 20:04 摘星丶仙 阅读(14) 评论(0) 推荐(0) 编辑
摘要:Calendar Calendar提供了获取或设置各种日历字段的方法。 构造方法 protected Calendar():由于修饰符是protected,所以无法直接创建该对象。 其他方法 static Calendar getInstance():使用默认时区和区域获取日历。 void set( 阅读全文
posted @ 2022-01-14 15:48 摘星丶仙 阅读(18) 评论(0) 推荐(0) 编辑
摘要:Date Date表示特定的瞬间,精确到毫秒。Date类中的大部分方法都已经被Calendar类中的方法所取代。 时间单位 1秒 = 1000毫秒 1毫秒 = 1000微秒 1微秒 = 1000纳秒 public static void main(String[] args) { //1.创建Dat 阅读全文
posted @ 2022-01-14 15:06 摘星丶仙 阅读(17) 评论(0) 推荐(0) 编辑
摘要:BigDecimal 位置:java.math包中。 作用:精确计算浮点数。 创建方式:BigDemical bd = new BigDecimal("1.0"); public static void main(String[] args) { //面试题 double result = (1.4 阅读全文
posted @ 2022-01-14 10:26 摘星丶仙 阅读(23) 评论(0) 推荐(0) 编辑
摘要:可变字符串 StringBuffer:可变长字符串,JDK1.0提供,运行效率慢、线程安全。 StringBuilder:可变长字符串,JDK5.0提供,运行效率快、线程不安全。 /** * StringBuffer和StringBuilder的使用 * 和String区别:(1)效率比String 阅读全文
posted @ 2022-01-14 09:53 摘星丶仙 阅读(14) 评论(0) 推荐(0) 编辑
摘要:##案例演示 需求 已知String str = "this is a text"; 1.将str中的单词单独获取出来 2.将str中的text替换为practice 3.在text前面插入一个easy 4.将每个单词的首字母改为大写 public class Demo4 { public stat 阅读全文
posted @ 2022-01-13 21:22 摘星丶仙 阅读(17) 评论(0) 推荐(0) 编辑
摘要:常用方法 public int length():返回字符串的长度。 public char charAt(int index):根据下标获取字符。 public boolean contains(String str):判断当前字符串中是否包含str。 //字符串方法的使用 //1、length( 阅读全文
posted @ 2022-01-13 20:44 摘星丶仙 阅读(15) 评论(0) 推荐(0) 编辑
摘要:String 字符串是常量,创建之后不可改变。 字符串字面值存储在字符串池中,可以共享。 public class Demo3{ public static void main(String[] args){ String name = "hello";//"hello" 常量存储在字符串池中 na 阅读全文
posted @ 2022-01-13 19:48 摘星丶仙 阅读(44) 评论(0) 推荐(0) 编辑
摘要:整数缓冲区 Java预先创建了256个常用的整数包装类型对象。 public class Demo2{ public static void main(String[] args){ //面试题 Integer integer1 = new Integer(100); Integer integer 阅读全文
posted @ 2022-01-13 19:25 摘星丶仙 阅读(14) 评论(0) 推荐(0) 编辑
摘要:类型转换与装箱、拆箱 8种包装类提供不同类型间的转换方式: Number父类中提供的6个共性方法。 public class Demo1{ public static void main(String[] args){ //类型装换:装箱,基本类型转成引用类型的过程。 //基本类型 int num1 阅读全文
posted @ 2022-01-13 15:08 摘星丶仙 阅读(20) 评论(0) 推荐(0) 编辑
摘要:什么是包装类? 基本数据类型所对应的引用数据类型。 Object可统一所有数据,包装类的默认值是null。 阅读全文
posted @ 2022-01-12 19:00 摘星丶仙 阅读(13) 评论(0) 推荐(0) 编辑
摘要:finalize()方法 当对象被判定为垃圾对象时,由JVM自动调用此方法,用以标记垃圾对象,进入回收队列。 垃圾对象:没有有效引用指向此对象时,为垃圾对象。 垃圾回收:由GC销毁垃圾对象,释放数据存储空间。 自动回收机制:JVM的内存耗尽,一次性回收所有垃圾对象。 手动回收机制:使用System. 阅读全文
posted @ 2022-01-12 18:52 摘星丶仙 阅读(18) 评论(0) 推荐(0) 编辑
摘要:equals()方法 public boolean equals(Object obj){} 默认实现为(this == obj),比较两个对象地址是否相同。 可进行覆盖,比较两个对象的内容是否相同。 public class TestStudent{ public static void main 阅读全文
posted @ 2022-01-12 16:28 摘星丶仙 阅读(28) 评论(0) 推荐(0) 编辑
摘要:toString()方法 public String toString(){} 返回该对象的字符串表示(表现形式)。 可以根据程序需求覆盖该方法,如:展示对象各个属性值。 public class TestStudent{ public static void main(String[] args) 阅读全文
posted @ 2022-01-12 16:09 摘星丶仙 阅读(13) 评论(0) 推荐(0) 编辑
摘要:hashCode方法 public int hashCode(){} 返回该对象的哈希码值。 哈希值根据对象的地址或字符串或数字使用hash算法计算出来的int类型的数值。 一般情况下相同对象返回相同哈希码。 public class TestStudent{ public static void 阅读全文
posted @ 2022-01-12 15:43 摘星丶仙 阅读(20) 评论(0) 推荐(0) 编辑
摘要:getClass方法 public final Class<?> getClass(){} 返回引用中存储的实际对象类型。 应用:通常用于判断两个引用中实际存储对象类型是否一致。 public class TestStudent{ public static void main(String[] a 阅读全文
posted @ 2022-01-12 15:33 摘星丶仙 阅读(185) 评论(0) 推荐(0) 编辑
摘要:Object类 超类、基类,所有类的直接或间接父类,位于继承树的最顶层。 任何类,如没有书写extends显示继承某个类,都默认直接继承0bject类,否则为间接继承。 Object类中所定义的方法,是所有对象都具备的方法。 Object类型可以存储任何对象。 作为参数,可接受任何对象。 作为返回值 阅读全文
posted @ 2022-01-12 15:14 摘星丶仙 阅读(21) 评论(0) 推荐(0) 编辑
摘要:匿名内部类 没有类名的局部内部类(一切特征都与局部内部类相同)。 必须继承一个父类或者实现一个接口。 public interface Usb{ //服务 void service(); } public class Mouse implements Usb{ @Override public vo 阅读全文
posted @ 2022-01-12 15:08 摘星丶仙 阅读(11) 评论(0) 推荐(0) 编辑
摘要:局部内部类 定义在外部类方法中,作用范围和创建对象范围仅限于当前方法。 //外部类 public class Outer{ private String name ="刘德华"; private int age = 35; public void show(){ //定义局部变量 final Str 阅读全文
posted @ 2022-01-12 11:52 摘星丶仙 阅读(21) 评论(0) 推荐(0) 编辑
摘要:静态内部类 不依赖外部类对象,可直接创建或通过类名访问,可声明静态成员。 //外部类 public class Outer{ private String name = "xxx"; private int age = 18; //静态内部类:和外部类相同 static class Inner{ p 阅读全文
posted @ 2022-01-12 10:48 摘星丶仙 阅读(15) 评论(0) 推荐(0) 编辑
摘要:成员内部类 在类的内部定义,与实例变量、实例方法同级别的类。 外部类的一个实例部分,创建内部类对象时,必须依赖外部类对象。 Outer out = new Outer(); Inner in = out.new Inner(); //外部类 public class Outer{ //实例变量 pr 阅读全文
posted @ 2022-01-12 10:16 摘星丶仙 阅读(16) 评论(0) 推荐(0) 编辑
摘要:什么是内部类 概念:在一个类的内部再定义一个完整的类。 class Outer{ class Inner{ } } 特点: 编译之后可生成独立的字节码文件。 内部类可直接访问外部类的私有成员,而不破坏封装。 public class Body{ private String name; //头部 c 阅读全文
posted @ 2022-01-11 23:52 摘星丶仙 阅读(13) 评论(0) 推荐(0) 编辑
摘要:内部类 成员内部类 静态内部类 局部内部类 匿名内部类 阅读全文
posted @ 2022-01-11 23:44 摘星丶仙 阅读(11) 评论(0) 推荐(0) 编辑
摘要:自定义异常 使用Java内置的异常类可以描述在编程时出现的大部分异常情况。除此之外,用户还可以自定义异常。用户自定义异常类,只需继承Exception类即可。 在程序中使用自定义异常类,大体可分为以下几个步骤: 创建自定义异常类。 在方法中通过throw关键字抛出异常对象。 如果在当前抛出异常的方法 阅读全文
posted @ 2022-01-11 17:41 摘星丶仙 阅读(23) 评论(0) 推荐(0) 编辑
摘要:异常处理机制 抛出异常 捕获异常 异常处理五个关键字 try、catch、finally、throw、throws 代码详解 Test类 public class Test { public static void main(String[] args) { int a = 1; int b = 0 阅读全文
posted @ 2022-01-11 15:00 摘星丶仙 阅读(21) 评论(0) 推荐(0) 编辑
摘要:什么是异常 实际工作中,遇到的情况不可能是非常完美的。比如:你写的某个模块,用户输入不一定符合你的要求、你的程序要打开某个文件,这个文件可能不存在或文件格式不对,你要读取数据库的数据,数据可能是空的等。我们的程序在跑着,内存或硬盘可能满了,等等。 软件程序在运行过程中,非常可能遇到刚刚提到的这些异常 阅读全文
posted @ 2022-01-11 14:32 摘星丶仙 阅读(49) 评论(0) 推荐(0) 编辑
摘要:内部类 内部类就是在一个类的内部再定义一个类,比如,A类中定义一个B类,那么B类相对于A类来说就称为内部类,而A类相对B类来说就是外部类了。 成员内部类 静态内部类 局部内部类 匿名内部类 代码详解 Outer类 public class Outer { private int id = 10; p 阅读全文
posted @ 2022-01-11 14:06 摘星丶仙 阅读(18) 评论(0) 推荐(0) 编辑
摘要:接口 普通类:只有具体实现 抽象类:具体实现和规范(抽象方法)都有! 接口:只有规范!自己无法写方法专业的约束!约束和实现分离:面向接口编程 接口就是规范,定义的是一组规则,体现了现实世界中“如果你是...则必须能...”的思想。如果你是天使,则必须能飞。如果你是汽车,则必须能跑。如果你好人,则必须 阅读全文
posted @ 2022-01-11 13:42 摘星丶仙 阅读(99) 评论(0) 推荐(0) 编辑
摘要:抽象类 abstract修饰符可以用来修饰方法也可以用来修饰类,如果修饰方法,那么该方法就是抽象方法;如果修饰类,那么该类就是抽象类。 抽象类中可以没有抽象方法,但是有抽象方法的类一定要声明为抽象类。 抽象类,不能使用new关键字来创建对象,它是用来让子类继承的。 抽象方法,只有方法的声明,没有方法 阅读全文
posted @ 2022-01-11 12:58 摘星丶仙 阅读(21) 评论(0) 推荐(0) 编辑
摘要:代码详解 Person类 public class Person { //2:赋初值 { System.out.println("匿名代码块"); } //1:只执行一次 static{ System.out.println("静态代码块"); } //3 public Person(){ Syst 阅读全文
posted @ 2022-01-11 11:01 摘星丶仙 阅读(15) 评论(0) 推荐(0) 编辑
摘要:X instanceof Y :X与Y必须有父子类关系,不然编译时就会报错 子类转换为父类,可能丢失自己的本来的一些方法! 多态: 父类引用指向子类的对象 把子类转换为父类,向上转换; 把父类转换为子类,向下转换:强制转换 方便方法的调用,减少重复的代码!简洁 抽象:封装、继承、多态! 阅读全文
posted @ 2022-01-11 10:43 摘星丶仙 阅读(17) 评论(0) 推荐(0) 编辑
摘要:多态 即同一方法可以根据发送对象的不同而采用多种不同的行为方式。 一个对象的实际类型是确定的,但可以指向对象的引用的类型有很多。(父类,有关系的类) 多态存在的条件 有继承关系 子类重写父类方法 父类引用指向子类对象 注意:多态是方法的多态,属性没有多态性。 instanceof (类型转换) 引用 阅读全文
posted @ 2022-01-10 21:26 摘星丶仙 阅读(27) 评论(0) 推荐(0) 编辑
摘要:重写:需要有继承关系,子类重写父类的方法! 方法名必须相同 参数列表必须相同 修饰符:范围可以扩大但不能缩小:public>Protected>Default>private 抛出的异常:范围,可以被缩小,但不能扩大:ClassNotFoundException --> Exception(大) 重 阅读全文
posted @ 2022-01-10 20:30 摘星丶仙 阅读(16) 评论(0) 推荐(0) 编辑
摘要:super注意点: super调用父类的构造方法,必须在构造方法的第一个 super必须只能出现在子类的方法或者构造方法中! super和this不能同时调用构造方法! VS this: 代表的对象不同: this:本身调用者这个对象 super:代表父类对象的应用 前提: this:没有继承也可以 阅读全文
posted @ 2022-01-10 19:49 摘星丶仙 阅读(22) 评论(0) 推荐(0) 编辑
摘要:继承 继承的本质是对某一批类的抽象,从而实现对现实世界更好的建模。 extends的意思是“扩展”。子类是父类的扩展。 JAVA中类只有单继承,没有多继承! 继承是类和类之间的一种关系。除此之外,类和类之间的关系还有依赖、组合、聚合等。 继承关系的两个类,一个为子类(派生类),一个为父类(基类)。子 阅读全文
posted @ 2022-01-10 19:31 摘星丶仙 阅读(43) 评论(0) 推荐(0) 编辑
摘要:封装 该漏的漏,该藏的藏 我们程序设计要追求**“高内聚,低耦合”**。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。 封装(数据的隐藏) 通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。 记住这句话就够了:属性私有 阅读全文
posted @ 2022-01-10 16:34 摘星丶仙 阅读(30) 评论(0) 推荐(0) 编辑
摘要:/* 1. 类与对象 类是一个模板:抽象,对象是一个具体的实例 2. 方法 定义、调用! 3. 对应的引用 引用类型:基本类型(8) 对象是通过引用来操作的:栈 >堆 4. 属性:字段Field 成员变量 默认初始化: 数字:0/0.0 char:u0000 boolean: false 引用: n 阅读全文
posted @ 2022-01-10 16:01 摘星丶仙 阅读(8) 评论(0) 推荐(0) 编辑
摘要:一个类即使什么都不写,它也会存在一个方法 构造器: 和类名相同 没有返回值 作用: new本质在调用构造方法 初始化对象的值 注意点 定义有参构造之后,如果想使用无参构造,显示的定义一个无参构造 阅读全文
posted @ 2022-01-10 15:09 摘星丶仙 阅读(16) 评论(0) 推荐(0) 编辑
摘要:类与对象的关系 类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物. 动物、植物、手机、电脑...... Person类、Pet类、Car类等,这些类都是用来描述/定义某一类具体的事物应该具备的特点和行为 对象是抽象概念的具体实例 张三就是人的一个具体实例,张三家 阅读全文
posted @ 2022-01-09 20:32 摘星丶仙 阅读(50) 评论(0) 推荐(0) 编辑
摘要:回顾方法及加深 方法的定义 修饰符 返回类型 break:跳出switch,结束循环和return的区别 方法名:注意规范就OK 见名知意 参数列表:(参数类型,参数名)... 异常抛出 方法的调用 静态方法 非静态方法 形参和实参 值传递和引用传递 this关键字 阅读全文
posted @ 2022-01-09 11:59 摘星丶仙 阅读(12) 评论(0) 推荐(0) 编辑
摘要:面向过程&面向对象 面向过程思想 步骤清晰简单,第一步做什么,第二步做什么…… 面向过程适合处理一些较为简单的问题 面向对象思想 物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类法行单独思考。最后,才对某个分类下的细节进行面向过程的思索。 面向对象适合处理复杂的问题,适合 阅读全文
posted @ 2022-01-09 11:40 摘星丶仙 阅读(47) 评论(0) 推荐(0) 编辑
摘要:稀疏数组介绍 当一个数组中大部分元素为0,或者为同一值的数组时,可以使用稀疏数组来保存该数组。 稀疏数组的处理方式是: 记录数组一共有几行几列,有多少个不同值 把具有不同值的元素和行列及值记录在一个小规模的数组中,从而缩小程序的规模 //1.创建一个二维数组11*11, 0:没有棋子; 1:黑棋; 阅读全文
posted @ 2022-01-08 19:46 摘星丶仙 阅读(12) 评论(0) 推荐(0) 编辑
摘要:冒泡排序 冒泡排序无疑是最为出名的排序算法之一,总共有八大排序! 冒泡的代码还是相当简单的,两层循环,外层冒泡轮数,里层依次比较,江湖中人尽皆知。 我们看到嵌套循环,应该立马就可以得出这个算法的时间复杂度位O(n^2) //冒泡排序 //1.比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们 阅读全文
posted @ 2022-01-08 19:01 摘星丶仙 阅读(13) 评论(0) 推荐(0) 编辑
摘要:Arrays类 数组的工具类java.util.Arrays 由于数组对象本身并没有什么方法可以供我们调用,但API中提供了一个工具类Arrays供我们使用,从而可以对数据对象进行一些基本的操作。 查看JDK帮助文档 Arrays类中的方法都是static修饰的静态方法,在使用的时候可以直接使用类名 阅读全文
posted @ 2022-01-08 16:01 摘星丶仙 阅读(12) 评论(0) 推荐(0) 编辑
摘要:多维数组 多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组。 二维数组 int a[][] = new int[2][5]; 解析:以上二维数组a可以看成一个两行五列的数组。 阅读全文
posted @ 2022-01-08 14:50 摘星丶仙 阅读(13) 评论(0) 推荐(0) 编辑
摘要:数组的使用 普通的For循环 For-Each循环 数组作方法入参 数组作返回值 阅读全文
posted @ 2022-01-08 13:14 摘星丶仙 阅读(14) 评论(0) 推荐(0) 编辑
摘要:数组的四个基本特点 其长度是确定的。数组一旦被创建,它的大小就是不可以改变的。 其元素必须是相同类型,不允许出现混合类型。 数组中的元素可以是任何数据类型,包括基本类型和引用类型。 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。数组本身就是对象,Java中对象是在 阅读全文
posted @ 2022-01-07 16:35 摘星丶仙 阅读(32) 评论(0) 推荐(0) 编辑
摘要:从Java SE 7开始,switch支持字符串String类型了 注意case穿透现象,活用break switch:匹配一个具体的值 字符的本质还是数字 反编译 java class(字节码文件) 反编译(IDEA) 阅读全文
posted @ 2022-01-02 18:08 摘星丶仙 阅读(12) 评论(0) 推荐(0) 编辑
摘要:equals:判断字符串是否相等 if语句至多有1个else语句,else语句在所有的else if语句之后。 if语句可以有若干个else if语句,它们必须在else语句之前。 一旦其中一个else if语句检测为true,其他的else if以及else语句都将跳过执行。 阅读全文
posted @ 2022-01-01 15:58 摘星丶仙 阅读(15) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示