
Java
T_P_F
这个作者很懒,什么都没留下…
展开
-
再后台代码中调用前台JS方法
直接:response.getWrite(),write((new String("<script>parent.test();</script>")));原创 2020-10-30 11:50:48 · 300 阅读 · 0 评论 -
集合框架
集合的概念:现实生活中:很多事物凑在一起数学中的集合:具有共同属性的事物的总体java中的集合类:是一种工具类,就像是一种容器,储存任意数量的具有共同属性的对象集合的作用:在类的内部,对数据进行整理简单而快速的搜索大数量的条目有的集合接口,提供了一系列排列有序的元素,并且可以在序列中间快速的插入或删除有关元素有的集合接口,提供了映射关系,可以通过关键字(key)去快速查找到对应的唯一对象,而这原创 2017-02-21 22:39:31 · 328 阅读 · 0 评论 -
Math类操作数据
Math 类位于 java.lang 包中,包含用于执行基本数学运算的方法, Math 类的所有方法都是静态方法,所以使用该类中的方法时,可以直接使用类名.方法名,如: Math.round();常用的方法: 返回值 方法名 解释 long round() 返回四舍五入后的整数double floor() 返回小于参数的最大整数double ce原创 2017-02-20 22:35:16 · 346 阅读 · 0 评论 -
java之静态方法与非静态方法
1.静态方法最大的特点就是,不用生成类的实例对象,直接可以用。2.它的语法格式:<类名|实例名>.<类变量名>3.Java中的静态方法中,在方法声明时前面要加static 修饰符。4.静态方法是使用公共内存空间的,就是说所有对象都可以直接引用,不需要创建对象再使用该方法5在外部调用静态方法时,可以使用”类名.方法名”的方式,也可以使用”对象名.方法名”的方式。而实例方法只有后面这种方式。也就是说,调原创 2017-02-20 22:21:51 · 603 阅读 · 0 评论 -
使用Date和SimpleDateFormat类表示时间
Date类: 使用 Date 类的默认无参构造方法创建出的对象就代表当前时间,我们可以直接输出 Date 对象显示当前的时间,显示的结果如下:Date d = new Date();System.out.println(d);结果:Mon Feb 20 20:50:54 CST 2017从结果可以看到,默认的时间格式不是太友好,与我们平时看到的时间格式不太一样,那如何才能让时间以我们指定的格式来原创 2017-02-20 21:19:26 · 413 阅读 · 0 评论 -
Java 中基本类型和字符串之间的转换
在程序开发中,我们经常需要在基本数据类型和字符串之间进行转换其中基本类型转换为字符串有三中方法:使用包装类的 toString() 方法使用String类的 valueOf() 方法用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串示例int i = 2;String str1 = Integer.toString(i);//方法一String str1 = String.v原创 2017-01-12 22:34:36 · 805 阅读 · 0 评论 -
包装类之装箱、拆箱
基本类型和包装类之间经常需要互相转换,以 Integer 为例:Integer i = new Integer(2);//定义Integer包装类对象int a=i+1;//将对象和基本类型进行运算装箱:把基本类型转换成包装类,使其具有对象的性质,又可分为手动装箱和自动装箱。int i = 2;//定义一个int基本类型变量,值为2Integer n = new Integer(i);//手动装原创 2017-01-12 22:12:36 · 545 阅读 · 0 评论 -
java中的包装类
基本类型是不具备对象特性的,比如基本类型不能调用方法,功能简单,为了让基本类型也具备对象的特性,Java为每个基本数据类型都提供了包装类,这样我们就可以像操作对象一样操作基本数据类型基本类型和包装类之间的对应关系:包装类主要提供了两大类方法:将本类型和其他基本类型进行转换的方法将字符串和本类型及包装类互相转换的方法以integer包装类为例,看下包装类的特性。Integer 包装类的构造方法:原创 2017-01-12 21:54:35 · 398 阅读 · 0 评论 -
System.currentTimeMillis()方法
用途一:计算某任务 耗费的毫秒用途二:获得当前的系统时间用途三:用当前毫秒数给文件命名等其他用途:比如随机数的种子数等示例:package currenttimemillis方法;import java.io.File;import java.text.SimpleDateFormat;import java.util.Date;public class Test { /**原创 2017-01-12 20:31:57 · 2750 阅读 · 0 评论 -
Java之String、StringBuilder、StringBuffer的区别
String : 字符串常量,它们的值在创建之后不能更改。代表字符串,Java 程序中的所有字符串字面值(如 “abc” )都作为此类的实例实现。 String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且大量浪费有限的内存空间。 String a = “a”; //假设a指向地址0x0001 a = “b”;//重新赋值后a指向地址0原创 2017-01-12 14:59:00 · 464 阅读 · 0 评论 -
'=='和equals()的区别
‘==’: 判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象equals(): 比较存储在两个字符串对象中的内容是否一致public class HelloWorld { public static void main(String[] args) { // 定义一个字符串 String s = "aljlkdsflkjsadjfklhasd原创 2017-01-07 14:00:41 · 306 阅读 · 0 评论 -
netbeans连接数据库SQLserver2008
数据库设置第一步:配置SQL,打开SQL server 2008文件下的配置工具里的SQL server配置管理器设置MSSQLSERVER协议中,开启TCP/IP,端口设置为1433在SQL server服务中重新启动(右击)打开数据库,右击在属性——>安全性 里将身份验证改为SQL server和windows身份验证模式重启数据库启动数据库,在安全性——》登录名 右击 新建登录名,原创 2016-12-27 21:01:33 · 9118 阅读 · 10 评论 -
JAVA中String类常用方法 I
String类常用方法有:int length() —– 返回当前字符串的长度int indexOf(int ch) —– 查找ch字符在该字符串中第一次出现的位置int indexOf(String ch) —– 查找ch子字符串在该字符串中第一次出现的位置int lastIndexOf(int ch) —– 查找ch字符在该字符串中最后一次出现的位置int lastIn原创 2016-12-25 22:00:09 · 415 阅读 · 0 评论 -
创建对象-类-构造函数之间的关系
1.当创建好一个类之后,无参构造函数是隐式存在的,即使你不写也会有,但含参构造器不是这样的,需要明确的写出来。2.创建一个对象时,程序会自动调用构造方法:1当程序没有含参构造器时,会自动调用无参构造器,用于创建对象,2当程序有含参构造器 程序会调用含参构造器,so创建对象时传不传入参数就看有没有含参构造器。3.当子类继承父类时,子类创建对象:同样会调用子类的无参构造函数,但在调用之前会默认先调用父原创 2017-04-21 21:30:46 · 1420 阅读 · 0 评论 -
构造函数与getter和setter的区别
构造函数是用于初始化类的属性,且只有在创建对象时才会调用构造函数,用于给对象分配地址无参的构造函数,创建对象时默认调用,当程序没有明确写出有参的构造函数,系统会默认的创建一个。有参的构造函数,创建对象时传进参数。setter方法,是对象引用调用setter方法,并传入参数。getter方法,对象调用getter方法,获取对象属性的值。区别:构造方法只有在创建对象时才会被“系统”调用且只调原创 2017-04-21 21:31:47 · 5958 阅读 · 3 评论 -
基本数据类型、包装类、String之间的转换
package 包装类;/** *8种基本数据类型对应一个类,此类即为包装类 * 基本数据类型、包装类、String之间的转换 * 1.基本数据类型转成包装类(装箱): * ->通过构造器 :Integer i = new Integer(11) * ->通过字符串参数:Float f = new Float("12.1f") * ->自动装箱 * 2.基本数据类型转换成S原创 2017-05-03 22:22:52 · 692 阅读 · 0 评论 -
类的访问控制符
**访问控制符**: 1. public 2. protect 3. 默认 4. private访问控制符主要针对外部访问而言,在一个类的内部所有成员之间可以相互访问,访问控制符是透明的。类的访问控制符: 1. public 2. 默认变量和方法的访问控制符: 1. public 2. protect 3. 默认 4. private控制范围:public...原创 2018-09-24 22:22:15 · 4343 阅读 · 2 评论 -
反射(2)—通过反射获取属性方法等信息
使用反射机制,获取所有的属性(熟悉)和后者获取指定属性(掌握) 获取权限修饰符获取变量类型获取变量名获取属性各部分的内容public class TestField { /** * 1.使用反射获取运行时类的所有属性信息 */ @Test public void test1(){ Class clazz = Person.clas原创 2017-08-08 19:33:56 · 563 阅读 · 0 评论 -
IO流(3)—字节流
IO体系: 抽象基类————节点流(文件流)InputStream——FileInputStream(字节流)OutputStream——FileOutputSteam(字节流)Reader ————FileReader(字符流)Writer————FileWriter(字符流)分类: 按操作数据单位不同:字节流(8bit)主要处理除了文本文件以外的问文件、字符流(16bit)主要原创 2017-08-05 08:14:16 · 307 阅读 · 0 评论 -
IO流(2)—知识结构
结构: 注:此IO包下主要介绍: 节点流:(字节流)FileInputStream、FileOutputStream、(字符流)Filereader、FileWriter 处理流(缓冲流):(字节流)BufferedInputStream、BufferedOutputStream、(字符流)BufferedReader、BufferedWriter 转换流:InputStreamReader、原创 2017-08-03 23:20:33 · 382 阅读 · 0 评论 -
IO流(1)—之序列化与反序列化
1.概念序列化:把Java对象转换为字节序列的过程称为对象的序列化 反序列化:把字节序列恢复为Java对象的过程称为对象的反序列化注:只有实现了Serializable和Externalizable接口的类的对象才能被序列化2.作用:对象的字节序列永久地保存到硬盘上,通常存放在一个文件中;网络上传送对象的字节序列。3.流:java.io.ObjectOutputStream代表对象输出流w原创 2017-05-09 23:19:06 · 401 阅读 · 0 评论 -
集合(5)—Map之HashMap()
定义.Map接口提供了一中种映射关系,其中的元素是以键值对(key- value)的形式存储 ,能够实现根据键(key)快速查找值(value).键(key)和值(value)可以是任意类型的变量.Map中的键值对以Entry类型的对象实例形式存在的.key值不可重复,value值可以重复.每个键最多只能映射到一个值.Map接口提供了分别返回key值集合、value值集合以及Entry(键原创 2017-03-26 10:35:11 · 494 阅读 · 0 评论 -
集合(4)—Collection之Set的使用方法
定义 set接口及其实现类–HashSetSet是元素无序且不可重复的集合,被称为集。HashSet是哈希集,是Set的一个重要实现类set中循环只能使用foreach和iterator这两个,而没有get()方法set中无论添加某个对象多少次,最终只会保留一个该对象 的引用,并且保留的是第一次添加的那个。set中add()、addAll()、remove()、removeAll()方法和原创 2017-03-26 09:47:00 · 562 阅读 · 0 评论 -
集合(3)—泛型
定义 泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。为什莫需要泛型 当我们将一个对象放入集合中,集合不会记住此对象的类型,当再次从集合中取出此对象时,改对象的编原创 2017-03-25 14:33:45 · 677 阅读 · 0 评论 -
集合(2)—Collection之List的使用方法
声明集合变量 List list = new ArrayList(); 或者 : public LIst list; public 构造函数(){ this.list = new ArrayList(); }添加元素方法一: 首先创建对象:比如 Student st = new student(); 其次把对象添加到集合中:list.add(st);方法二: 其他和上一个一样只原创 2017-03-25 14:17:12 · 450 阅读 · 0 评论 -
集合(1)—List接口的实现类ArrayList
List List接口是Collection接口的子接口,从其名称可以看出,是一个元素有序(并不是按大小排序,具有顺序索引,类似于数组),默认按照元素的添加顺序设置元素的索引。List用法 List包括List接口以及List接口的所有实现类。因为List接口实现了Collection接口,所以List接口拥有Collection接口提供的所有常用方法,又因为List是列表类型,所以List接原创 2017-03-19 11:43:06 · 1679 阅读 · 0 评论 -
tomcat配置问题
1.首先安装JDK和Tomcat(我的tomcat是解压缩版的)2.配置JDK环境变量3.配置tomcat环境变量4.在MyEcliipse中配置JDK(可以使用MyEclipse自带的tomcat,但可能版本不适合,也可以使用刚才安装的tomcat) –>windows–>Preferences–>左侧MyEclipse下–>1.Servers–>Integrated SandBox–>MyEc原创 2017-05-08 22:42:24 · 350 阅读 · 0 评论 -
多态(2)
定义 一种形态的多种表现形式多态性的前提 继承和重写程序运行分为编辑状态和运行状态 对于多态性来讲: 编辑时“看左边”,将此引用变量理解为父类类型,所以此时引用不能调用子类特有的方法,若想调用的话需要向下转型运行时“看右边”,将次引用变量理解为子类类型,所以此时引用的方法是子类重写父类的方法,调用哪个方法就看是哪个子类原创 2017-04-26 23:19:20 · 276 阅读 · 0 评论 -
java-异常
异常简介 有异与常态,和正常情况不一样,有错误出现,阻止当前方法或作用域,称之为异常。处理异常的意义将异常提示给编程人员或者用户,使本来中断的程序以适当的方式继运行或退出并且保存用户的当前操作或数据回滚最后把占用的资源释放掉。异常种类Throwable:java中所有的异常都继承它,java.lang.Throwable,其中又 分为Error和Exception。Error是错误,java.原创 2016-12-23 18:25:47 · 364 阅读 · 0 评论 -
接口
1.概念接口可以理解为一种特殊的类,由全局常量和公共的抽象方法组成。类是一种具体的实现体,而接口则是定义了某一批类所需要遵守的规则,接口不关心这些类的内部数据也不关心这些类内部方法的实现细节,它只规定这些类必须提供某些方法。2.关键字和类定义不同定义接口不使用class关键字,而是用interface关键字。3.语法格式[修饰符] abstract interface 接口名 [ext原创 2016-11-27 15:10:13 · 566 阅读 · 0 评论 -
栈内存与堆内存
JAVA把内存分为栈内存和堆内存。栈内存:分配给函数中的一些基本类型的变量和引用变量。释放内存:超过变量的作用域后,java会自动释放掉该内存空间。堆内存:分配给创建的对象和数组。释放内存:在堆中分配的内存,由java虚拟机自动垃圾回收器来管理。数组和对象本身在堆中分配,即使程序运行到使用new产生数组 和对象的语句所在地代码块之外,数组和对象本身占用的堆内存也不会被释放,数组原创 2016-09-14 22:53:05 · 388 阅读 · 0 评论 -
反射(3)—动态、静态代理
1.动态代理是指客户通过代理类来调用其他对象(被代理类)的方法,并且是程序在运行时根据需要动态创建目标类的代理对象使用场合:调试、远程方法调用 原理:使用一个代理将对象包装起来,然后用代理对象取代原始对象,任何对原始对象的调用都要通过代理,代理对象决定是否以及何时将方法调用转到原始对象上代码://接口interface Subject{ void action();}//被代理类原创 2017-08-08 19:36:38 · 328 阅读 · 0 评论 -
多线程(5)—线程通信
綫程通信wait():令當前綫程挂起,並釋放CPU資源,釋放鎖,而當前綫程則進入到綫程等待隊列notify()/notifyAll():喚醒正在等待的綫程中,優先級最高的(所有的)綫程結束等待功能:數據遞加,綫程“甲”、“乙”交替執行,輸出數據 以上這些代碼必須寫在同步代碼塊中,否則報錯代码示例public class Test7 { public static void main(原创 2017-08-08 17:02:36 · 233 阅读 · 0 评论 -
反射(1)—基本知识
一、反射,被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能操作任意对象内部属性及方法。 正常方式:引入需要的“包类”名称–>通过new实例化–>取得实例化对象反射方式:实例化对象–>getClass()方法–>得到完整的“包类”名称二、功能: 1.在运行时判断任意一个对象所属的类2.在运行时构造任意一个类的对象3.在运行时判断一个原创 2017-08-08 19:22:54 · 373 阅读 · 0 评论 -
网络编程(1)—TCP
java.net 包中提供了两种常见的网络协议的支持:TCP:TCP 是传输控制协议的缩写,它保障了两个应用程序之间的可靠通信。通常用于互联网协议,被称 TCP / IP。UDP:UDP 是用户数据报协议的缩写,一个无连接的协议。提供了应用程序之间要发送的数据的数据包。/** * TCP协议: * 使用TCP协议前需要建立TCP链接形成数据传输通道 * 传输前采用三次握手方式,是可靠原创 2017-06-26 15:05:25 · 366 阅读 · 0 评论 -
网络编程(2)—UDP
一个实例: 功能:客户端发送文本,接收端接收文本并将文本转换成大写,返回给客户端步骤: *1.创建客户端Socket *2.Socket调用getOutputStream()方法,创建输出流(输入流) *3.调用write()方法,写入数据 *4.接受来自服务端的信息 *(若信息是双向传递的,即信息-来-回,而非单向传递,则需要在发送信息之后加上socket.shutdownO原创 2017-06-30 09:15:52 · 349 阅读 · 0 评论 -
多线程(4)—同步方法
实现接口–同步方法 同步方法:将操作共享数据的方法声明为synchronized,即此方法为同步方法,能够保证其中一个线程执行此方法时,其他线程等待。锁默认的是当前对象代码块public class Test4 { public static void main(String[] args) { Number3 n3= new Number3(); Thr原创 2017-08-08 16:58:23 · 283 阅读 · 0 评论 -
多线程(3)—同步代码块
1.同步机制: java任意类型的对象都有一个标志位该标志位有0、1两种状态,其开始状态为1,当某个状态执行了synchronized(object)语句后object对象的标志位变为0状态,直到执行完整个synchronized语句中的代码,该对象的标志位又变回1状态。 当一个线程执行到synchronized(object)语句块时,先检查object对象的标志位,若为0表示有另外的线程正在原创 2017-08-08 16:54:27 · 367 阅读 · 0 评论 -
多线程(2)—静态修饰符实现属性共享数据
1.使用静态修饰符实现属性共享数据2.多线程优点:1.提高应用程序的响应2.提高CPU的利用率3.改善程序结构3.多线程分类:守护线程和用户线程4.线程的生命周期新建、就绪、运行、阻塞、死亡5.代码实例public class Test1 { public static void main(String[] args) { //方法一—继承 Nu原创 2017-08-08 16:23:25 · 375 阅读 · 0 评论 -
多线程(1)—单线程
1.线程: 线程时轻量级的进程线程没有独立的地址空间线程是有进程创建的(寄生在进程)一个进程可以拥有多个线程2.线程的状态: 新建、就绪运行阻塞、死亡3.java中一个类要当作线程来使用有两种方法 1.继承Thread类,并重写run函数2.实现Runnable接口,并重写run函数4.例子/**1.使用方法一和方法二编写一个程序,该程序每隔一秒在控制台输出一个“He原创 2017-04-21 22:17:30 · 479 阅读 · 0 评论