- 博客(45)
- 收藏
- 关注
原创 第六章 多表查询
如果给表齐了别名,一旦在select和where中使用了表别名的话,则必须使用表的别名,而不能再使用表的原名。内连接 :合并具有同一列的两个以上的表的行,结果集中不包含一个表与另一个表不匹配的行。如果查询语句中出现多个表都都存在的字段,则必须指明次字段所在的表。角度1:等值连接 vs 非等值连接。角度2: 自连接 vs 非自连接。角度3: 内连接 vs 外连接。
2026-03-15 14:45:44
233
原创 java反射机制
Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。
2025-10-26 14:32:30
706
原创 IO流与网络编程
网络编程的目的:直接或间接地通过网络协议与其它计算机实现数据交换,进行通讯。网络编程中有两个主要的问题:如何准确地定位网络上一台或多台主机;定位主机上的特定的应用找到主机后如何可靠高效地进行数据传输通信双方地址IP端口号网络通信协议。OSI参考模型TCP/IP参考模型(或TCP/IP协议)
2025-09-25 20:22:47
1030
原创 泛型的学习
关于自定义泛型类,泛型接口如果实例化时,没有指明泛型的类型.默认为java.lang.Object类型要求:如果大家定义类类是带泛型的,建议在实例化时要指明类的泛型建议:实例化时指明类的泛型由于子类在继承带泛型的父类时,指明了泛型的类型,则实例化子类对象时,不再需要指明泛型@Test。
2025-09-13 22:17:11
459
原创 java集合(二)
Map与Collection并列存在。用于保存具有映射关系的数据:key-valueMap 中的 key 和 value 都可以是任何引用类型的数据Map 中的key 用Set来存放,不允许重复,即同一个 Map 对象所对应的类,须重写hashCode()和equals()方法。
2025-09-10 17:20:19
773
原创 java集合
7.boolean retainAll(Collection c):把交集的结果存在当前集合中,不影响c。|-----Map接口:双列集合:用来存储一对一对的数据–>高中函数 y=f(x)|-----Collection接口:单例集合,用于存储一个一个的对象。
2025-08-23 15:50:01
1955
原创 枚举类与注解
私有化类的构造器,保证不能在类的外部创建其对象在类的内部创建枚举类的实例。对象如果有实例变量,应该声明为,并在构造器中初始化使用 enum 定义的枚举类默认继承了java.lang.Enum类,因此不能再继承其他类枚举类的构造器只能使用 private 权限修饰符枚举类的所有实例必须在枚举类中显式列出**(, 分隔;结尾)**。列出的实例系统会自动添加修饰必须在枚举类的第一行声明枚举类对象Annotation 其实就是代码里的特殊标记。
2025-08-15 15:02:53
575
原创 常用类学习
String substring(int beginIndex, int endIndex) :返回一个新字符串,它是此字符串从beginIndex开始截取到endIndex(不包含)的一个子字符串。String substring(int beginIndex):返回一个新的字符串,它是此字符串的从beginIndex开始截取到最后的一个子字符串。String concat(String str):将指定字符串连接到此字符串的结尾。如:ofPattern(“yyyy-MM-dd hh:mm:ss”)
2025-07-18 11:04:27
917
原创 多线程学习
keepAliveTime:线程没有任务时最多保持多长时间后会终止。降低资源消耗(重复利用线程池中线程,不需要每次都创建)maximumPoolSize:最大线程数。提高响应速度(减少了创建新线程的时间)corePoolSize:核心池的大小。
2025-07-10 20:54:48
2115
原创 java基础学习(三十一)
一般地,用户自定义异常类都是的子类自定义异常类通常需要编写几个重载的构造器自定义异常需要提供自定义的异常通过throw抛出自定义异常最重要的是异常类的名字,当异常出现时,可以根据名字判断异常类型。
2025-06-18 16:12:28
318
原创 java基础学习(三十)
在Java语言中,将程序执行中发生的不正常情况称为“异常”Java程序在执行过程中所发生的异常事件可分为两类Error:Java虚拟机无法解决的严重问题。如:JVM系统内部错误、资源耗尽等严重情况。和OOM。一般不编写针对性的代码进行处理Exception: 其它因编程错误或偶然的外在因素导致的一般性问题,可以使用针对性的代码进行处理1. 空指针访问2. 试图读取不存在的文件3. 网络连接中断4. 数组角标越界对于这些错误,一般有两种解决方法:一是遇到错误就终止程序的运行。
2025-06-17 14:09:08
647
原创 java基础学习(二十七)
随着继承层次中一个个新子类的定义,类变得越来越具体,而父类则更一般,更通用。类的设计应该保证父类和子类能够共享特征。有时将一个父类设计得非常抽象,以至于它没有具体的实例,这样的类叫做抽象类。
2025-06-13 20:18:16
304
原创 java基础学习(二十六)
final标记的变量(成员变量或局部变量)即称为常量。名称大写,且只能被赋值一次。final标记的类不能被继承。提高安全性,提高程序的可读性。final标记的方法不能被子类重写。
2025-06-12 14:16:06
175
原创 java基础学习(二十一)
子类可看做是特殊的父类,所以父类类型的引用可以指向子类的对象:向上转型(upcasting)。super的追溯不仅限于直接父类。
2025-06-02 14:51:08
772
2
原创 java基础学习(二十)
在子类中可以根据需要对从父类中继承来的方法进行改造,也称为方法的重置、覆盖。在程序执行时,子类的方法将覆盖父类的方法。
2025-06-01 19:34:47
1523
原创 java基础学习(十九)
import语句告诉编译器到哪里去寻找类。控制层controller 处理业务逻辑。:package 顶层包名.子包名;模型层model 主要处理数据。视图层 view 显示数据。
2025-05-28 13:11:18
614
原创 java基础学习(十五)
方法是类或对象行为特征的抽象,用来完成某个功能操作。在某些语言中也称为函数或过程。将功能封装为方法的目的是,可以实现代码重用,简化代码Java里的方法不能独立存在,所有的方法必须定义在类里。举例:public int getAge() { //声明方法getAge()return age;public void setAge(int i) { //声明方法setAgeage = i;//将参数i的值赋给类的成员变量age。
2025-05-24 16:44:11
674
原创 java基础学习(十四)
类(Class)和对象(Object)是面向对象的核心概念。1.类是对一类事物的描述,是抽象的、概念上的定义2.对象是实际存在的该类事物的每个个体,因而也称为实例(instance)“万事万物皆对象”类的语法格式age = i;创建Java自定义类步骤:定义类(考虑修饰符、类名)编写类的属性(考虑修饰符、属性类型、属性名、初始化值)编写类的方法(考虑修饰符、返回值类型、方法名、形参等)
2025-05-23 16:32:44
810
原创 java基础学习(十三)
比如:8–>4–>2–>1需要查找3次,16–>8–>4–>2–>1需要查找4次,依次类推发现,二分法查找的n个元素的列表,最多需要log2n步(n相对于2的对数,不为整数采用进一法),而简单查找最多需要n步。冒泡排序的升级版,交换排序的一种。2.外部排序:参与排序的数据非常多,数据量非常大,计算机无法把整个排序过程放在内存中完成,必须借助于外部存储器(如磁盘)。快速排序通常明显比同为O(nlogn)的其他算法更快,因此常被采用,而且快排采用了分治法的思想,所以在很多笔试面试中能经常看到快排的影子。
2025-05-18 13:58:05
673
原创 java基础学习(十二)
2.外部排序:参与排序的数据非常多,数据量非常大,计算机无法把整个排序过程放在内存中完成,必须借助于外部存储器(如磁盘)。快速排序通常明显比同为O(nlogn)的其他算法更快,因此常被采用,而且快排采用了分治法的思想,所以在很多笔试面试中能经常看到快排的影子。可见掌握快排的重要性。格式3(静态初始化):int[][] arr = new int[][]{{3,8,2},{2,7},{9,0,1,6}};3.稳定性:若两个记录A和B的关键字值相等,但排序后A、B的先后次序保持不变,则称这种排序算法是稳定的。
2025-05-17 19:11:05
287
原创 java基础学习(十一)
数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。数组的常见概念数组名下标(或索引)元素数组的长度数组本身是引用数据类型,而数组中的元素可以是任何数据类型,包括基本数据类型和引用数据类型。创建数组对象会在内存中开辟一整块连续的空间,而数组名中引用的是这块连续空间的首地址。数组的长度一旦确定,就不能修改。我们可以直接通过下标(或索引)的方式调用指定位置的元素,速度很快。
2025-05-16 14:54:31
420
原创 java基础学习(九)
实质上,嵌套循环就是把内层循环当成外层循环的循环体。当只有内层循环的循环条件为false时,才会完全跳出内层循环,才可结束外层的当次循环,开始下一次的循环。将一个循环放在另一个循环体内,就形成了嵌套循环。其中, for ,while ,do…while均可以作为外层循环或内层循环。设外层循环次数为m次,内层为n次,则内层循环体实际上需要执行m*n次。注意不要忘记声明④迭代部分。否则,循环将不能结束,变成死循环。do-while循环至少执行一次循环体。for循环和while循环可以相互转换。
2025-05-14 14:23:53
319
原创 java基础学习(八)
byte,short,char,int,枚举 (jdk5.0),String(jdk 7.0);②循环条件部分为boolean类型表达式,当值为false时,退出循环。①初始化部分可以声明多个变量,但必须是同一个类型,用逗号分隔。④可以有多个变量更新,用逗号分隔。
2025-05-13 13:36:16
456
原创 java基础学习(六)
为true, 运算后的结果是表达式1;为false,运算后的结果是表达式2;位运算是直接对整数的二进制进行的运算。表达式1:表达式2;
2025-05-11 11:58:41
372
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅