javaSE
文章平均质量分 55
细心的整理学习javase中遇到的的问题和注意细节,并对知识点进入深入浅出的剖析,图文并茂,也有足够的代码供参考
挽天java
这个作者很懒,什么都没留下…
展开
-
Lambda表达式
> :lambda操作符或者箭头操作符-> 左边:lambda形参列表 (其实就是接口中的抽象方法的形参列表)-> 右边:lambda体 (其实就是重写的抽象方法的方法体)-> 左边:可以省略数据类型(数据推断),如果只有一个形参,可以省略()-> 右边:如果只有一条语句,可以省略{}和return。原创 2024-04-01 14:04:39 · 457 阅读 · 0 评论 -
Java的常用的正则表达式
包含资源,能简化日常的正则表达式的开发的工作。原创 2024-03-26 08:48:50 · 227 阅读 · 0 评论 -
Java语法学习 正则表达式
需求:使用正则表达式完成对文本的查询,regular expression(正则表达式)原创 2024-03-25 14:16:23 · 1709 阅读 · 0 评论 -
Java小项目--满汉楼
先创建libs包完成对jar包的拷贝和添加入库德鲁伊工具包工具包2.初步编写界面3.创建Employee表,domain(类),EmployeeDAO和BasicDAO创建Employee表创建Employee类创建BasicDAO表创建EmployeeDAO4.创建一个EmployeeService然后将其添加到菜单界面进行判定这个位置5.创建Dining表,domain(类DiningTable),DiningTableDAO,DingTableService创建d原创 2024-03-20 21:09:48 · 2840 阅读 · 0 评论 -
JDBC和连接池
需求:满足Java程序能对多个不同的数据库进行操作,而创建了一种接口,实现对数据库的规范先创建一个Driver对象,然后设置连接到的数据库的地址,然后创建一个properties对象,在里面设定好账户密码,然后通过driver的connect方法,创建出connect连接缺点:driver是第三方的,依赖性强,灵活性差3.使用DriverManager替换Driver这种方法具有更好的拓展性4.自动注册,简化操作(推荐使用)在反射时,完成了类的加载,在静态代码块里实现了自动注册5.原创 2024-03-10 17:03:15 · 378 阅读 · 0 评论 -
Java语法学习反射
流程图(程序在计算机的阶段)反射的主要的类这个提高效率不大对于第三点:首先类只会加载一次,得到的class的对象,也只有一个,如果用反射两次得到class的对象,只是名字不同,地址本质上还是一个。原创 2024-02-12 20:58:01 · 460 阅读 · 0 评论 -
Java学习网络编程
其它:在写入时可以用writeNewLine()来进行结束标记,但这要求读取必须使用readline()方法。当客户端连接服务端时,服务端是我们固定的端口,而客户端也有一个端口,只不过是TCP/IP协议随机分配的。通用:调用socket对象的shutdownOutput()方法。gethostname 是获取主机名字。getHostAddress 是获取IP地址。注意:写完过后记得使用flush方法刷新。获取指定主机名字或域名的信息。获得本机的名字和IP。原创 2024-02-07 20:32:17 · 658 阅读 · 0 评论 -
Java语法学习IO流
try {第二种:相当于把第一种分开写try {第三种:与第二种差不多try {原创 2024-02-04 21:03:01 · 1428 阅读 · 0 评论 -
Java语法学习线程基础
如果类里面已经出现了静态的同步方法,那么这个锁就作用于这个类上,此时的非静态的方法,如果要实现同步的话,需要synchronized(这个类名.class)调用star方法开启支线程,如果不用star,直接调用run方法,那么相当于一个主线程的普通的方法,会让主线程按照顺序执行下去。当i = 3时,停止执行主线程,执行子线程thread,执行完成后,继续执行主线程。在线程执行时,如果其它线程.join(),那么会等其它线程执行完,再执行本线程。守护线程,在用户线程执行完之后,自己也会终止执行。原创 2024-02-03 19:30:24 · 389 阅读 · 0 评论 -
Java事件处理机制
是通过实现接口完成的具体使用方法,查询文档。原创 2024-02-02 11:02:55 · 356 阅读 · 0 评论 -
Java语法学习坐标体系/绘图
基本介绍:注意每次自动调用,就会重新执行一次paint方法里的所有程序创建一个类继承JPanel,然后重写构造器,paint方法@Override。原创 2024-02-01 15:05:00 · 338 阅读 · 0 评论 -
Java语法学习泛型
可以用来限制使用指定类型,也可以(类似占位符,不指名具体类型)在创建实例对象时,指定具体的类型,有一股函数模板的味道P p = new P("泛型",6);对于第二点:因为不确定类型,所以不知道开多大的内存空间,而不能使用泛型接口中的属性默认有静态性质我们在使用泛型方法时,在形参类别传入泛型的数据,编译器就会自动识别,这也会发生自动装箱对于第三点:只要声明了自己的泛型,就是泛型方法,不声明,只使用不是泛型。原创 2024-02-01 11:56:18 · 483 阅读 · 0 评论 -
Java语法学习集合
相对于数组,元素个数不限,而且能够存储不同的类型元素可重复支持调用get(索引)方法取出每个元素有序,添加顺序和取出顺序一致其实主要还是分为迭代器和增强for循环两种,记住keyset,Values,和entryset返回的都是一个集合,然后用对集合的处理遍历方式就行,只不过对于entryset返回的对象,要转为Map.Entry后才能调用它的方法。原创 2024-01-31 15:38:08 · 1223 阅读 · 0 评论 -
Java语法学习Date/Calendar/LocalDateTime
与Date差不多,都是先得到时间,再创建对象,并制定格式(语法一致),再调用对象的format方法传入时间。用getInstance来得到对象的实例,里面提供了大量的方法。还有其它方法自寻查找,如判断闰年,多久之前或之后的时间…可以自己设计时间日期的输出格式,记住使用字母的含义。getMonthValue返回的是阿拉伯数字几月。getMonth返回的月份的英文单词。首先该类是抽象类,构造器是私有化的。注意:我们返回的月是从0开始编号的。直接获取当前系统的时间。原创 2024-01-28 14:03:48 · 321 阅读 · 0 评论 -
Java语法学习BigInteger与BigDecimal
前面与上文一样,只不过在出发涉及到无限循环小数,会抛出异常。在一个整数非常大的时候,我们常用的数据类型都存储不下时。处理对精度要求很高的项目,一般和钱有关。注意双引号,形参列表是字符串。加,减,乘,除,商和余数。下面是保留小数位数方法。原创 2024-01-28 11:22:34 · 364 阅读 · 0 评论 -
Java语法学习System
注意区别形参列表里的形参的意思。原创 2024-01-28 10:34:24 · 329 阅读 · 0 评论 -
Java语法学习Arrays
注意返回的值是它有的索引,如果不存在,就返回它应该存在的位置的索引加一后,取负数。形参列表前面传入数组,后面传入要拷贝的长度,如果超过原来长度,则后面的补null。还有一个是传入接口的,可以去看,用匿名内部类来实现对接口具体的重写。数组的所有元素一样为真,否则为false。用我们给的数,替换数组里面所有元素。注意传入的数据要是有序的。原创 2024-01-28 10:13:58 · 318 阅读 · 0 评论 -
Java语法学习Math
了解原创 2024-01-27 18:49:23 · 355 阅读 · 0 评论 -
Java语法学习String
如果是字符串常量的拼接**(在常量池),就是会在常量池创建,而如果含有字符串的引用变量(在堆空间)**,那么就会在底层调用方法,最后返回一个String对象,而存储的是堆空间地址。原创 2024-01-27 18:15:55 · 806 阅读 · 0 评论 -
Java语法学习包装类
这里系统底层完成了以前的手动装箱,创建一个新的integer,然后调用它的valueof方法返回给我们的对象,拆箱同理,也是底层帮我们调用的intvalue方法。上图就是源码,对于第二个,我们发现在-128–127之间,是直接返回,所以本质上是同一个对象,而对于第三个,因为不在范围内所以返回的是两个不同的新对象。对于方法一和三,如果n是基本数据类型会发生自动封装,让方法一和三可以正常执行,但是方法二,因为调用的是包装类的方法,不会自动封装。对于第一个:是直接创建了两个不同的新对象,所以不想等。原创 2024-01-27 11:30:26 · 342 阅读 · 0 评论 -
Java语法学习异常
总的来说异常分为Error和Exception两大类Exception又分为运行时异常和编译时异常下面是常见的分类对于在一个方法(假设叫f1),调用另一个方法(f2),f2抛出了异常,那此时在f1中我们要判断该异常是编译异常(图1)还是运行异常(图2),对于编译异常,要求我们必须处理(要么举行抛出,要么try-catch),而对于运行异常我们可以不做处理(但是最后可能还是要在处理)原创 2024-01-26 17:50:00 · 1518 阅读 · 0 评论 -
Java匿名内部类小练习
类似多态参数,用多态接口来接受接口。用匿名内部类来实现方法的调用。原创 2024-01-25 21:10:54 · 338 阅读 · 0 评论 -
Java语法学习注解
可以让编译器对注解的方法进行语法的校验。原创 2024-01-25 17:16:38 · 347 阅读 · 0 评论 -
Java语法学习枚举类
这种类似于前面的单例设计模式,私有化构造器(防止创建对象),在内部创建所需对象(用final和static修饰优化底层),去除set方法(防止修改属性),调用我们创建好的类时,直接静态的调用class fa{final static fa fa1 = new fa ("父亲1",28);final static fa fa2 = new fa("父亲2 ",27);// }去除掉set方法return age;// }去除掉set方法。原创 2024-01-25 14:40:54 · 326 阅读 · 0 评论 -
Java语法学习内部类
局部内部类本质上同时有局部变量和类的特点局部变量:局部变量的作用域,导致内部可以访问外部,但是外部不能直接访问内部 ,而如果想访问重名的外部类的属性,需要:外部类.this.属性局部变量没有修饰符(但是类可以用final),本质上属于外部类,所以可以访问外部类的private类:访问局部内部类需要创建对象才能访问,局部内部类也可以继承,实现接口,但是要在同一个作用域才行(局部内部类也可以继承外部其它类),也可以有属性,方法,代码块,构造器,内部类与局部内部类差别在所处的位置。原创 2024-01-25 11:43:49 · 1283 阅读 · 0 评论 -
Java语法学习接口
我感觉从那个对象调用接口的属性来看,接口是一种特殊的继承,接口继承接口,普通类继承普通类,普通类 实(继)现(承)接口,相当于增加了额外的功能,同时还继承了父类的功能。接口的多态特性和类的多态基本一致,都可以实现向上转型的多态参数,多态数组方法(只要实现过该接口,就可以当作该接口的子类),或者是多态向下转型的方法的调用。对于这种情况,我们可以使用super来指定父类的,使用类名直接调用的方法来指定接口的。对于第八点:接口之间是可以继承的,而且一个接口可以继承多个接口,当然接口不能继承类。原创 2024-01-24 18:49:16 · 312 阅读 · 0 评论 -
Java语法学习抽象类
通过abstract来把一个我们需要使用但是现在还不知道怎么使用的方法,变为抽象方法,(好处)它的子类可以重写该方法,但是如果一个类中有抽象方法,这个类也要加入abstract修饰成为抽象类。抽象类的子类要么是抽象类,要么就要把其父类的所有抽象方法都要重写,把所有父类的抽象方法重写,就是说他的所有父类的抽象方法至少有一次重写,在整个继承关系中(下面是实例)因为抽象方法的目的是让子类重写,所以抽象方法是不能用static,final,private等修饰,因为它们限制重写。原创 2024-01-23 19:28:21 · 340 阅读 · 0 评论 -
Java语法学习final
注意:final的赋值在图中三个只能选用一个.原创 2024-01-23 18:27:25 · 325 阅读 · 0 评论 -
Java语法学习代码块
静态 > 普通 > 构造器同一个级别的按照继承关系,和代码块的位置顺序先后执行。原创 2024-01-23 14:43:22 · 435 阅读 · 0 评论 -
Java语法学习main方法
与前面的static与类的理解差不多。原创 2024-01-23 11:06:39 · 350 阅读 · 0 评论 -
Java语法学习类变量和类方法
2.中JDK8以前,类变量和类方法是存储在方法区里的静态域里面,实现对其调用。而在JDK8之后,类变量和类方法存储在堆空间class的尾部里,通过反射机制来处理。1.通过在类中对其添加static,就可以实现该类的所有对象,都可以共相该属性或方法。3.首先还是遵循修饰符访问,其次可以直接通过类访问(可以不具体对象访问)5.类方法的使用情景。原创 2024-01-23 10:47:58 · 323 阅读 · 0 评论 -
Java面向对象(中级)练习题与总结
在上面的bankAccount是测试类,savingsAccount是在bankAccount上的衍生与功能完善.在实际编程中应该应用这种建立模块功能的搭建.先编写一个测试类,再逐步完善功能。原创 2024-01-21 21:05:45 · 324 阅读 · 0 评论 -
Java idea 学习断点调试
3.在调试过程中可以动态下断点,来判断是否执行了这段程序。1.在调试过程中是运行状态,所以是运行类型。原创 2024-01-21 10:25:33 · 296 阅读 · 0 评论 -
Java语法学习finalize
即使用system.gc调用,输出来的顺序也是不知道的,因为这个和程序执行是两个线程。而且这个垃圾回收也不是时刻监测一个对象是不是垃圾,再回收,而是最后某个时间一起。原创 2024-01-21 09:22:20 · 300 阅读 · 0 评论 -
Java语法学习toString
Java语法学习toString大纲具体案例原创 2024-01-20 22:02:26 · 334 阅读 · 0 评论 -
Java语法学习hashcode
Java语法学习hashcode大纲hashcode了解注意事项具体案例1.基本定义2.注意细节原创 2024-01-20 21:50:37 · 318 阅读 · 0 评论 -
JAVA语法学习==与equals
而对于equals在object类最开始是比较地址是否相同,只不过在不同的子类如String,integer上重写了该方法,使其有新的比较形式。注意:多态里的向下转型,向上转型之类的新对象引用都是指向的同一个地址。==是用来比较地址是否相同的。原创 2024-01-20 21:41:13 · 337 阅读 · 0 评论 -
JAVA语法学习多态数组/多态参数
下面进行对多态数组优化,通过判断,来实现执行不同的类型的方法。总的来说就是利用instanceof来比较判断。就是用父类的形参,传入子类的实参。1.代码实例了解多态数组。我做的升级版顺便复习。原创 2024-01-20 19:43:41 · 385 阅读 · 0 评论 -
JAVA语法学习多态的动态绑定机制
(属性找编译类型,方法找运行类型,子类没有找父类,对于方法中的属性,是哪里的方法,就是哪里的属性,而方法中的方法,依然从运行类型开始寻找)对应老韩314集。原创 2024-01-20 16:31:23 · 342 阅读 · 0 评论 -
JAVA学习语法多态
只能调用编译类型里的所有成员方法和属性(还是要遵守修饰符的访问条件),不能调用运行类型里的编译类型不存在的属性和方法(就是运行类型特有的),在运行时,是从子类往上开始查找,遵循继承里面的查找方法,比如如果编译类型和运行类型两个都同时有相同的方法的,就调用运行类型。因为dog是运行类型,所以调用的say方法是从dog开始的(前提是都有say方法),后面把运行类型改成cat了,就调用的是cat里面的say方法。属性就取决于编译类型的属性,只是在继承时进行初始化时,是就近寻找的。创建的对象是可以更改的。原创 2024-01-20 15:04:35 · 1101 阅读 · 0 评论