自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 收藏
  • 关注

原创 (四十五)、HTML and Servlet

HTMLHTML的概念HTML(Hyper Text Markup Language 超文本标识语言 ) 是一种用来制作超文本文档的简单标记语言。用HTML编写的超文本文档称为HTML文档。 HTML 文件是包含一些标签的文本文件。 这些标签告诉 WEB 浏览器如何显示页面。 HTML 文件必须使用 htm 或者 html 作为文件扩展名。HTML文档结构<html> <head

2016-08-27 19:48:15 929

原创 (四十四)、网络基础与TCP,UDP协议

计算机网络基础知识通讯协议协议protocol:通信双方必须遵循的规矩网络通信协议:网络协议是构成网络的基本组件之一,协议是若干规则和协定的组合。网络通信协议是分层的:一般指A机器的第n层与B机器的第n层的对话,这种对话中所使用的若干规则和约束便称为第n层网络协议。TCP/IP协议在Internet中TCP/IP协议是使用最为广泛的通讯协议(互联网上的一种事实的标准)。TCP/IP是英文Tr

2016-08-25 20:42:31 656

原创 (四十三)、线程的同步和线程池

线程的同步同步代码块synchronized放在对象前面限制一段代码的执行同步代码块定义语法:synchronized(对象){需要同步的代码;}class TicketOffice implements Runnable { private int tickets = 10; public void run() { while (true) {

2016-08-24 20:01:06 1080

原创 (四十二)、多线程

进程的概念每个独立执行的程序称为进程 进程是程序的一次动态执行过程,它经历了从代码加载、执行到执行完毕的一个完整过程,这个过程也是进程本身从产生、发展到最终消亡的过程。多进程操作系统能同时运行多个进程(程序),由于CPU具备分时机制,所以每个进程都能循环获得自己的CPU时间片。由于CPU执行速度非常快,使得所有程序好象是在“同时”运行一样。 在操作系统中进程是进行系统资源分配、调度和管理的

2016-08-23 20:11:55 317

原创 (四十一)、设计模式

设计模式设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。单例设计模式构造方法私有,提供创建对象的方法,保证对象单一懒汉式调用时才会创建对象//懒

2016-08-23 19:52:36 312

原创 (四十)、内部类

内部类内部类的定义将一个类定义在另一个类的里面,对于里面那个类就称为内部类(内置类,嵌套类)。 例如:如果在类Outer的内部再定义一个类Inner,此时Inner就称为Outer的内部类,而Outer则称为Inner的外部类。内部类语法格式标识符 class 外部类的名称{ //外部类的成员 标识符 class 内部类的名称{ //内部类

2016-08-23 10:22:20 246

原创 (三十九)、RandomAccess,对象流,数据流

RandomAccess类RandomAccessFile类可以说是Java语言中功能最为丰富的文件访问类,它提供了众多的文件访问方法。RandomAccessFile类支持“随机访问”方式,可以跳转到文件的任意位置处读写数据。在要访问一个文件的时候,不想把文件从头读到尾,而是希望像访问一个数据库一样地访问一个文本文件,这时,使用RandomAccessFile类就是最佳选择。 RandomAcc

2016-08-22 20:00:37 340

原创 (三十八)、内存流和打印流

内存流什么是内存流当输出流的目的地,和输入流的源是内存时,这样的流称之为内存流。常用内存流ByteArrayInputStreamByteArrayOutputSteampublic class ByteArrayInputStreamDemo { public static void main(String[] args) throws IOException { B

2016-08-22 19:37:37 430

原创 (三十七)、字符流与转换流

字符流字符输入流ReaderDemo:public class ReaderDemo { public static void main(String[] args) { FileReader reader = null; FileWriter writer = null; try { reader = new File

2016-08-22 19:14:59 226

原创 (三十六)、IO流

IO流IO指的是Input/Output,IO流:输入输出流。 统称为数据流。(IO Stream) 在Java程序中,对于数据的输入 / 输出操作以流的方式进行;流是从起源到接收的有序数据。JDK提供了各种各样的流类,用以获取不同种类的数据;流的作用对文件进行读写操作流的分类按流向分输入流 读取数据的流输出流 写入数据的流按功能分节点流 直接操作目标的流处理流 是对一个已存在的

2016-08-19 20:58:30 306

原创 (三十五)、File类

File类概述1、 文件可认为是相关记录或放在一起的数据的集合。文件一般存放在存储介质上:硬盘、u盘、光盘、软盘(1.44M)、云盘等。 2、 java.io.File 类是专门对文件进行操作的类。(只能对文件本身进行操作,不能对文件内容操作) 3、 File类是“文件和目录路径名的抽象表示”。 而不是指文件的内容(IO)。 4、 File类定义了一些与平台无关的方法操作,如:创建、删

2016-08-18 20:52:53 364

原创 (三十四)、异常

异常的概念异常是程序在运行期发生的不正常的事件,它会打断指令的正常执行流程。 设计良好的程序应该在异常发生时提供处理这些不正常事件的方法,使程序不会因为异常的发生而阻断或产生不可预见的结果。Java语言使用异常处理机制为程序提供了异常处理的能力异常的分类(从编程角度)非受检(unchecked)异常(运行时异常 RuntimeException):编译器不要求强制处置的异常。一般是指编程时的逻辑

2016-08-18 20:37:08 243

原创 (三十三)、Map接口

Map接口概述1、 实现Map接口的集合类用来存储“键-值”映射对。 //key value 2、 Map实现类中存储的“键-值”映射对是通过键来唯一标识,Map底层的“键”是用Set来存放的。 3、 映射Map每个元素含有两个部分:名称(key)和值(value)。其中key不得重复,所以它可以组成一个Set,而value部分可以重复可以组成一个List。 4、 如果将Key=Va

2016-08-16 21:11:00 247

原创 (三十二)、Set接口

集合特点Set接口没有提供Collection接口额外的方法,但实现Set接口的集合类中的元素是不可重复的。总结: 无序不可重复常用实现类HashSet实现原理:实现Set接口的集合存储对象时: 1、 根据每个对象的哈希码值(调用hashCode()获得)用固定的算法算出它的存储索引,把对象存放在一个叫散列表的相应位置(表元)中: a存对象时,集合首先调用该对象的hashCode方法来

2016-08-16 20:31:45 271

原创 (三十一)、List接口

List接口List集合特点:有序可重复1、 实现List接口的集合类中的元素是有序的,且允许重复。 2、 List集合中的元素都对应一个整数型的序号记载其在集合中的位置(每个元素都有索引),可以根据序号存取集合中的元素。 3、 List集合不仅支持Iterator还支持List集合专用迭代器ListIterator(双向迭代器)相比Collection新增方法List接口比Collect

2016-08-16 20:10:36 214

原创 (三十)、Collection接口

Collection接口理解Collection接口-定义了存取对象的方法。两个非常常用的子接口: List接口:存放的元素有序且允许有重复的集合接口。Set接口:存放的元素无序不包含重复的集合接口,所有的重复内容是靠hashCode()和euqals()两个方法区分的。 说明: “元素”-对象,实例 “重复”-两个对象通过equals相等。 “有序”-元素存入的顺序与取出的顺序相同。

2016-08-13 20:40:16 243

原创 (二十九)、集合框架

集合框架数组的缺点: 1.长度固定,没有办法改变数组长度。 2.数组的长度很多时候无法满足具体需求 3.删除和添加数据比较麻烦java为了克服数组的缺点,设计了一个集合框架 最大优点:动态调整集合的容量 集合只能存储对象,不能存基本数据类型 ==如果需要存入基本数据类型,就要使用这些基本数据类型的包装类== Collection stu = new Arra

2016-08-13 20:29:54 401

原创 (二十八)、接口

概念抽象类可以理解为是从多个类中抽象出来的模板,不但允许有抽象方法,还可以有变量和普通方法等。如果抽象的更彻底,只留下常量和抽象方法,则此时的抽象类有了新的名字:接口。从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含静态常量和方法的定义,而没有变量和方法的实现。接口是抽象方法和静态常量的集合! public interface Pet { public static

2016-08-13 11:11:14 290

原创 (二十七)、枚举类

枚举类类一旦创建,则这个类的个数就确定了 public enum 类名{ }特点: 1.枚举类也是一个类,限制了这个类对象的个数 2.必须在首行声明这个类有哪些对象 3.构造方法一定是私有 4.可以有抽象方法,在定义对象时,需实现抽象方法demo:Season.javapublic enum Season {

2016-08-12 19:42:13 330

原创 (二十六)、正则表达式

正则表达式正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。字符串使用正则表达式1.matches(String regex) 告知此字符串是否匹配给定的正则表达式。2.replaceAll(String regex, String replacement) 使用给定的 repla

2016-08-12 19:30:06 352

原创 (二十五)、Math和Random类

Math类方法:一些常用的数学方法 具体可查APIpublic class Main { public static void main(String[] args) { System.out.println(Math.exp(1)); System.out.println(Math.sqrt(9)); System.out.println(M

2016-08-12 19:05:53 387

原创 (二十四)、常用类:时间相关类

时间相关类Date:时间类java.util.Date类表示特定的瞬间,精确到毫秒。常用构造方法 Date() 使用系统当前的时间创建 一个Date实例 内部就是使用System. currentTimeMillis()获取系统当前时间的毫秒数来创建Date对象 Date(long dt) 使用自1970年1月1日00:00:00 GMT以来的指定毫秒数创建 一个Date实例常用方法get

2016-08-09 21:07:16 233

原创 (二十三)、常用类:String相关类

String相关类String类:1.final修饰,不能有子类 2.不可变类,String对象都是不可变的(包装类也是不可变类)创建字符串对象:1.使用new关键字:String s = new String(“abc”);2.使用字符串常量直接赋值:String s1 = “abc”;3.使用+连接:String s2 = s + s1;总结:1.如果有new,最终指向堆中对象2.

2016-08-09 20:50:50 340

原创 (二十二)、常用类:包装类

包装类打包(装箱): 把基本数据类型包装成对象的过程拆包: 把包装类型的对象转成基本数据类型 int i = i1.intValue(); // 常用的静态方法parsexxx int i2 = Integer.parseInt("12345"); System.out.println(i2); int

2016-08-09 20:27:51 196

原创 (二十一)、常用类:Object类

Object类任何类都是直接或间接继承自Object类(上帝类) java中,任何类都有一个父类。如果一个类没有明确的去继承某个类,则这个类一定是继承Object常用方法:getClass(): 反射,返回值类型 Class java中一切皆对象 xxx.class也是对象,是Class的对象 Class是所有class对象相应的类hashCode(): 返回的是这个对象的哈希值,默

2016-08-09 20:16:12 218

原创 (二十)、抽象类

抽象类抽象类:用abstract修饰的类 抽象方法:只有方法声明,没有方法体,用abstract修饰的方法 1.抽象必须用abstract修饰 2.抽象类可以拥有普通类的所有成员,还可以有抽象方法 3.抽象类不能直接创建对象,只能通过他的非抽象子类来创建 4.抽象类的子类必须实现抽象类的所有抽象方法,如果不实现, 必须把这个子类

2016-08-09 19:59:06 222

原创 (十九)、方法的覆写

方法的覆写(重写,override)当父类方法无法满足子类的需求,子类可以重新定义继承的那个方法覆写的规则:两同:方法名相同,参数相同两小:1.子类的返回值类型必须是父类的返回值类型的子类或者与父类相同 返回值类型必须有子父类关系2.子类抛出的异常,与父类相同,或者是父类异常类型的子类一大:子类方法的访问权限不能比父类小继承中静态方法的特点 子类可以继承父类的静态方法

2016-08-08 19:54:05 700

原创 (十八)、继承

面向对象特征2:继承面向对象的三大特征:封装性,继承性,多态性继承:extends 被继承的类继承的特点:1.被继承的类我们称之为父类,超类(superclass),基类(baseclass)2.继承别人的类,叫子类3.子类可以继承父类的所有非私有方法4.一个子类只能继承一个父类。java中的继承是单继承5.一旦继承后,父类的所有非私有成员就成为了子类的成员6.子类继承父类后,可以添加自

2016-08-08 19:40:25 254

原创 (十七)、static关键字

static关键字:static 1.表示静态,可以修饰属性和方法。 2.被static修饰的成员称之为静态方法或静态属性 3.不被static修饰的成员:实例方法,非静态方法 4.修饰属性时,表示这个属性是静态,这个属性是一种公共的资源,所有的对象所共有 5.当访问静态成员的时候,最标准的做法是不建议使用对象去访问静态属性

2016-08-08 19:11:58 183

原创 (十六)、this关键字

this关键字变量访问时原则:就近原则this指代当前类的对象,指代当前对象this如果省略之后仍然指代成员变量,可以省略this指代当前对象,可以调用对象的属性和方法例如: public void eat(String food) { System.out.println("正在吃" + food); } // 对象方法,实例,非静态方法

2016-08-08 18:00:26 200

原创 (十五)、构造方法

构造方法构造器,构造函数,Constructor,构造方法主要作用:对创建的对象做一些初始化的工作构造方法的特点: 1.方法 2.他的方法名与类名相同 3.构造方法没有返回值类型 4.构造方法不能通过对象.方法()去调用 5.构造方法是在创建对象 new 类名() 的时候调用 6.构造方法也支持重载构造方法分类:无参构造方法: 1.如果一个类没有显式

2016-08-08 17:45:39 247

原创 (十四)、方法重载

方法重载:在同一个类中,方法名相同,形参列表不同的方法之间构成重载(overload)调用方法的时候,是根据传递的实参,来决定调用的是哪个方法注意: 1.判断形参列表是否相同时,只看形参类型,不看变量名 2.是否重载与返回值类型无关 3.形参列表不同:个数不同,顺序不同 4.多态:重载是多态中的一种情况,静态多态Demo:Person类:public class Person

2016-08-08 17:33:08 272

原创 (十三)、二维数组

二维数组二维数组的声明: int[][] a; 推荐 aram int a[][];### 二维数组的创建 1.new int[5][6],创建一个5*6的二维数组 2.new int[3][]; 3.new int[][] { { 1, 3 }, { 4, 5 }, { 3, 4 }, { 2, 3 },{ 6, 5 } };

2016-08-07 21:04:41 288 3

原创 (十二)、可变参数

可变参数 可变参数 可变参数:jdk1.5新增 可以根据需求传递参数 可以传递多个或不传 可变参数在方法内部 可以当做数组来使用 可以传一个数组 声明可变参数时,放在形参最后一个public class Demo1 { public static void main(String[] args) {

2016-08-07 20:52:10 303 3

原创 (小案例)数组应用:实现学生管理系统

数组实现学生管理系统 学生信息管理系统 1.可以添加学生信息 2.可以修改学生信息 3.可以删除学生信息 4.可以统计学生人数 5.可以统计每个学科的总分,平均分。。。 School类:public class School { /** * 代表这所学校所能容纳的最多学生 */ int capacity = 100;

2016-08-07 12:31:47 2410 2

原创 (十一)、数组的简单操作

数组的简单操作冒泡排序法public class Demo3 { public static void main(String[] args) { // 从一个给定的数组中找出最大值最小值 int[] arr = { 4, 50, 8, 9, 88, 77, 99, 51, 25 }; int max = arr[0]; int

2016-08-06 21:08:09 217

原创 (十)、数组

数组数组也是一种对象 1.数组声明:数据类型[] 数组名 2.数组的创建:new 数据类型[数组长度] 3.访问数组,需要用到数组下标(index,索引),从0开始。最后一个元素:长度-1 4.数组对象一旦创建出来,每个元素也有默认值 5.不太推荐的声明方式: 数据类型 数组名[] 6.数组长度一旦确定,不能改变

2016-08-06 20:56:07 283

原创 (九)、面向对象初步

面向对象初步默认值: 数字类型默认值:0 boolean默认值:false 引用数据类型默认值:null汽车图纸 生产车间 汽车用属性描述: 名字 颜色 轮子 ……动作:方法 跑类 new 对象属性(成员变量) 方法(成员方法)成员变量:直接定义在类中的变量作用域:整个类都

2016-08-06 20:43:07 235

原创 (小案例)猜数字游戏

猜数字游戏游戏规则: 1.随机生成0-100 2.从键盘输入一个猜的数 3.如果猜大了,提示大了 4.如果猜小了,提示小了 5.猜到正确结束import java .util.Scanner;public class Guess{ public static void main(String[]args){

2016-08-06 20:29:25 601

原创 (八)、循环结构

循环结构for()循环语法:for(表达式1;表达式2;表达式3){ //循环体 } 1.表达式1只执行一次 2.表达式2是个boolean表达式 3.表达式1一般是对循环变量的初始化 4.表达式3一般是对循环变量进行自增或自减操作 5.表达式1可以省略,分号不能省 6.表达式2也可以省略,表示是t

2016-08-06 20:19:47 280

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除