- 博客(24)
- 收藏
- 关注
原创 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”。
题目要求:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。题目难点:如何判断字节是汉字还是字母?解决办法:将String转换成byte数组,同时设置字符集为“GBK”,汉字截半的话对应字节的ASC码将会小于0。import java.io.UnsupportedEncodingException;public.
2020-12-10 23:36:27
268
原创 string pool解析
在Java中有两种创建字符串对象的方式:1)采用字面值的方式赋值 2)采用new关键字新建一个字符串对象。这两种方式在性能和内存占用方面存在着差别。方式一:采用字面值的方式赋值,例如:String str1 = "aaa";String str2 = "aaa";System.out.print(str1==str2);采用字面值的方式创建一个字符串时,JVM首先会去字符串池中查找是...
2019-10-14 22:27:55
172
原创 Get、Post和转发、重定向总结
Get和Post的区别第一点:get重点在从服务器上获取资源,post重点在向服务器发送数据;第二点:get传输数据是通过URL请求,以field(字段)= value的形式,置于URL后,并用"?“连接,多个请求数据间用”&"连接,如http://127.0.0.1/Test/login.action?name=admin&password=admin,这个过程用户是可见...
2019-08-12 11:48:00
1482
原创 MVC与三层架构
什么是三层架构三层架构是指:视图层 View、服务层 Service,与持久层 DAO。它们分别完成不同的功能。View 层:用于接收用户提交请求的代码Service 层:系统的业务逻辑主要在这里完成DAO 层:直接操作数据库的代码为了更好的降低各层间的耦合度,在三层架构程序设计中,采用面向抽象编程。即上层对下层的调用,是通过接口实现的。而下层对上层的真正服务提供者,是下层接口的实现类。...
2019-08-07 11:09:23
208
原创 Java单例,TCP/IP
单例class SingleDog { private static SingleDog sd = null; private SingleDog() {} public static SingleDog getInstance() { synchronized (SingleDog.class) { if (null == ...
2019-08-06 16:52:03
150
原创 Java反射
获取Class类对象static Class forName(String className);通过Class类名调用,是一个static修饰的静态方法,传入的参数是一个完整的包名.类名例如:Demo1 ==》 com.qfedu.a.Demo1该方法有异常抛出 ClassNotFoundExceptionClass 类名.class通过指定的类名调用,获取类对应的属性Class...
2019-08-02 21:25:26
293
原创 Java生产者消费者
1. 线程的生存周期2. wait() 和 notify() 方法wait()和notify()方法都是Object类中的方法wait()1. 让调用该方法的线程进入一个阻塞状态2. 需要通过对象调用,而且一般都是【锁对象】3. 【线程进入阻塞状态,会开启当前使用的锁对象】wait是让步的意思,当前线程在没有满足某种自己设置的某种条件的时候,就可以wait,让别的线程先调用,避免造...
2019-08-02 15:07:01
154
原创 Java进程和线程
1.什么是进程就是一个独立的应用程序进程都是需要通过系统的分配,获取系统当中CPU,内存,显卡,网络和磁盘的这些资源。1. 独立性2. 互斥性2. 什么是线程进程是由多个线程组成的,而且最少有一个线程线程就是进程中的一个功能 1. 抢占式运行!!!CPU执行程序是按照时间片的形式来执行的,而且单位时间片不能的线程相互抢占执行2. 资源共享性!!!一个程序内的线程,是共享当前程...
2019-08-01 09:53:20
137
原创 Java static 关键字
static修饰成员变量饮水机:1. 公共区域2. 你来学习以前,它在这里3. 你毕业之后,它还在这里4. 供所有人使用5. 坏了大家都不能用class Person { // 成员变量 Field String name; int age; /* 给予 static修饰的成员变量一个初始值 */ static String ...
2019-07-29 17:29:07
115
原创 Java的各种内存分析
内存中的数组数组是一种引用内存,数组引用变量只是一个引用,数组元素和数组变量在内存里是分开存放的。实际的数组对象被存放在堆内存(heap)中,数组的引用变量被存储在栈内存中。int[] arr = new int[10];等号左边放在栈内存,等号右边放在堆内存。...
2019-07-25 17:33:15
155
原创 十二、Java泛型
1.为什么要使用泛型在实际开发中,对于数据类型一致化的要求是非常重要的!!!例如:ArrayList list = new ArrayList();如果这里没有对可以保存到ArrayList中的数据类型进行约束,这里会导致一些因为数据类型一致化导致的问题:1. 代码中会出现没有必要的强制类型转换,浪费时间浪费效率2. 后期操作ArrayList发现数据类型不一致,导致其他操作问题使用...
2019-07-24 11:50:29
134
原创 jQuery 效果
隐藏和显示jQuery hide() 和 show()通过 jQuery,您可以使用 hide() 和 show() 方法来隐藏和显示 HTML 元素:$("#hide").click(function(){ $("p").hide();}); $("#show").click(function(){ $("p").show();});可选的 speed 参数规定隐藏/显...
2019-07-22 17:13:33
156
原创 jQuery基础
AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。AJAX 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。AJAX - 创建 XMLHttpRequest 对象...
2019-07-22 17:04:29
120
原创 十一、Java之collection总结
集合Conllection的基本概念:1、集合的基本认识:如StringBuffer&StringBuilder是集合(存储的对象类型是String)。数组、对象与其很相似,但是还有区别。2、集合的由来:对象用于封装特有数据,对象多了需要存储,如果对象的个数不确定,就需要使用集合来进行存储。3、集合的特点:(1)用于存储对象的容器;即集合中存储的元素是对象(2)集合的长度是可变的...
2019-07-21 11:25:26
171
原创 十、Java 封装、接口
Java 封装封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制。封装的优点良好的封装能够减少耦合。类内部的结构可以自由修改。可以对成员变量进行更精确的控制。隐藏信息,实现细节。实现Java封装的步骤修改属性的可见性来限制对属性的访问(一般限制为private)对每个值属性提供对外的...
2019-07-17 11:44:37
362
原创 九、Java 多态与抽象类
Java 多态多态存在的三个必要条件继承重写父类引用指向子类对象当使用多态方式调用方法时,首先检查父类中是否有该方法,如果没有,则编译错误;如果有,再去调用子类的同名方法。多态的好处:可以使程序有良好的扩展,并可以对所有类的对象进行通用处理。重写我们将介绍在 Java 中,当设计类时,被重写的方法的行为怎样影响多态性。我们已经讨论了方法的重写,也就是子类能够重写父类的方法。当子...
2019-07-17 11:06:49
165
原创 八、Java 重写(Override)与重载(Overload)
重写(Override)重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。class Animal{ public void move(){ System.out.println("动物可以移动"); }} cla...
2019-07-15 14:52:44
130
原创 七、JAVA继承
继承的特性子类拥有父类非 private 的属性、方法。子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。子类可以用自己的方式实现父类的方法。Java 的继承是单继承,但是可以多重继承,单继承就是一个子类只能继承一个父类,多重继承就是,例如 A 类继承 B 类,B 类继承 C 类,所以按照关系就是 C 类是 B 类的父类,B 类是 A 类的父类,这是 Java 继承区别于 C++ 继...
2019-07-15 14:30:08
129
原创 六、Java 异常处理
Java 异常处理异常发生的原因有很多,通常包含以下几大类:1、用户输入了非法数据。2、要打开的文件不存在。3、网络通信时连接中断,或者JVM内存溢出。这些异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的。要理解Java异常处理是如何工作的,你需要掌握以下三种类型的异常:检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的...
2019-07-15 14:08:56
144
原创 五、Java日期、方法与流(Stream)、文件(File)和IO
Java 日期时间获取当前日期时间import java.util.Date; public class DateDemo { public static void main(String args[]) { // 初始化 Date 对象 Date date = new Date(); // 使用 toString() 函...
2019-07-05 14:46:22
309
原创 四、Java 循环结构与各种类
Java 循环结构Java 增强 for 循环public class Test { public static void main(String args[]){ int [] numbers = {10, 20, 30, 40, 50}; for(int x : numbers ){ System.out.print( x ); ...
2019-07-05 14:03:20
350
原创 三、Java 变量类型、修饰符、 运算符
Java 变量类型Java 局部变量局部变量声明在方法、构造方法或者语句块中;局部变量在方法、构造方法、或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁;访问修饰符不能用于局部变量;局部变量只在声明它的方法、构造方法或者语句块中可见;局部变量是在栈上分配的。局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。实例变量实例变量声明在一个类中,但在方法、...
2019-07-05 14:03:14
138
原创 二、Java 基本数据类型
Java 基本数据类型变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。Java 的两大数据类型:内置数据类型引用数据类型内置数据类型byte:8位,最大存储数据量是255,存放的数据范围是-128~127之间。short:16位,最大数据存储量是65536,数据范围是-327...
2019-07-05 14:03:07
129
原创 一、Java 的特性和对象、类
JAVA主要特性Java语言是面向对象的:Java语言提供类、接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。Java语言是健壮的:Java的强类型机制、异常处理、垃圾的自动...
2019-07-05 14:02:59
301
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人