java基础
春水上行
这个作者很懒,什么都没留下…
展开
-
JAVA基础day05 面向对象思想 成员变量和方法 封装 构造方法和this的使用
面向对象三个特征:封装,继承,多态。匿名对象 new 类().成员变量. 当对对象的方法只调用一次时,使用匿名对象比较简化。 匿名对象还可以作为实际参数传递。 例如: /* main(){ show(new 类()); } public static void show(类 c) { } */权限修饰符 public,private,protected, 封装原则:把不原创 2016-09-10 15:27:47 · 811 阅读 · 0 评论 -
JAVA基础 day22 File类的方法和应用 利用递归获取目录下的所有文件 Properties类的应用(和IO技术结合,存取配置文件) 打印流和合并流等功能类的学习应用 切割文件练习
File类 将已存在的或者未存在的文件封装成对象。 封装文件的三种构造方法,只是封装,并不创建。import java.io.*;class FileDemo1{ public static void main(String[]args) { File f1=new File("file1.txt"); File f2=new File("c:原创 2016-10-23 21:57:53 · 1015 阅读 · 0 评论 -
JAVA基础 day26 正则表达式的简单学习
正则表达式对字符串操作的一种逻辑公式。就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤。java API中有正则表达式符号所代表的含义。匹配:[ ]内只表示一位。 String类中的matches方法,用正则表达式规则匹配字符串,只要有一处不同就返回false。编写正则表达式,来过滤QQ号,QQ号第一位不能是0,五位到12位原创 2016-11-03 18:57:36 · 409 阅读 · 0 评论 -
JAVA基础 day17 Collections工具类和Arrays工具类的使用 静态导入和可变参数的学习
Collections:工具类,对集合进行操作,里面全为静态方法,所以可以直接用类名.方法()调用方法。sort方法:泛型继承了Comparable类,所以可以对List集合进行子自然排序。(public static import java.util.*;class CollectionsDemo{ public static void main(String[]args) {原创 2016-10-16 14:45:23 · 553 阅读 · 0 评论 -
JAVA基础 day16 Map集合及其子类的运用及练习
MAP集合:该集合存储键值对,一对一对存。并且要保证键的唯一性。 collection为单列集合,Map为双列集合。 Map集合常用的子类: HashTable:底层是哈希表数据结构,不可以将null设置为键或者值。该集合线程同步 HashMap:底层是哈希表数据结构,允许使用null键和null值,该集合线程不同步。 TreeMap:底层是二叉树数据结构,线程不同步,可以用于给集合中的键原创 2016-10-13 22:37:22 · 532 阅读 · 0 评论 -
复习
对象,引用Person p=new Person(); p是引用,是一个对象的地址,指向对象,存在于栈内存中,真正对象则在堆内存中。Person p2=p; 堆内存中的对象可以有多个引用,这时p2和p都指向一个对象。如果堆内存中的对象没有任何变量指向该对象,这个对象就变成了垃圾,java垃圾回收机制就会释放该内存所占的内存区。如果需要java垃圾回收机制回收某个对象,只需切断该对象的所有引用,即原创 2016-11-05 20:04:44 · 359 阅读 · 0 评论 -
JAVA基础 day23 IO流的其他类 (对象的序列化 管道流 RandomAccessFile类(随机读取文件) DateStream(操作基本数据类型的流) 操作数组的流 )字符编码问题
IO流其他类对象的序列化 序列化:把Java对象转换为字节序列的过程。 反序列化:把字节序列恢复为Java对象的过程用途:把对象的字节序列永久的保存到硬盘上,通常存在文件中。 在网络上传输对象的字节序列。编程:进行将对象存取到文件的操作当类实现Serializable接口,序列化运行时,使用一个称为 serialVersionUID 的版本号与每个可序列化类相关联,这时如果改原创 2016-10-25 23:01:33 · 614 阅读 · 0 评论 -
JAVA基础day18 常用类的学习 System Date Math等
System类Runtime类: 该类没有构造方法,说明该类不可以创建对象,该想到该类方法全为静态,看API发现该类中还有非静态方法,那么说明该类中肯定有个方法,可以获取本类对象,方法为静态,并且返回值为本类类型,该方法是static Runtime getRuntime()。Date类,其中的很多方法都已经过期,现在如果要用到与日期相关的方法,要从DateFormat和Calendar两个类中获原创 2016-10-17 21:38:04 · 361 阅读 · 0 评论 -
JAVA基础 day24 GUI的学习 事件监听机制 编写简易的记事本 jar包双击执行
GUI:图形用户接口JAVA为GUI提供的对象都在java.Awt和javax.Swing两个包里。java.Awt:Abstract Window ToolKit(抽象窗口工具包),需要调用本地系统方法实现功能。属于重量级控件。javax.Swing:在AWT的基础上,建立的一套图形界面系统。其中提供了很多的组件,完全由java实现。增强了移植性,属轻量级控件。继承关系。 GUI布局 创建图形原创 2016-10-28 21:11:46 · 1169 阅读 · 0 评论 -
JAVA基础 day20 装饰模式 自己实现LineNumberReader类
装饰设计模式 当想要对已有对象进行功能增强时,可以自定义类,将已有对象传入,基于已有的功能,进行增强,自定义的类就叫做装饰类。装饰类通常会通过构造方法来接受已有的被装饰的对象,并基于被装饰类的功能,提供更强的功能。LineNumberReader 类:提供了行号的设置和获取方法。是BufferedReader的子类import java.io.*;class LineNumberReaderDe原创 2016-10-20 14:36:23 · 335 阅读 · 0 评论 -
JAVA基础 day19 IO流概述 字符流:FileWriter类和FileReader类的使用 BufferedWriter和BufferedReader类的使用
IO流:用来处理设备之间的数据传输 流按操作数据分为两种:字节流和字符流 按流向分为:输入流和输出流字节流的抽象基类:InputStream,OutputStream 字符流的抽象基类:Reader,WriterFileWriter类: 创建该类对象时,该对象一被初始化就必须明确要被操作的文件,如果文件不存在,则会在指定目录下创建该文件,如果指定目录下有该文件,那么就会覆盖掉原来的文件。im原创 2016-10-19 12:32:34 · 809 阅读 · 0 评论 -
JAVA基础 day25 网络编程 IP类 UDP,TCP传输学习 简易聊天工具 TCP并发学习
网络编程网络通讯要素:IP地址(32位):网络中设备的标识,不易记忆,可用主机名。本地回环地址:127.0.0.1,主机名:localhost端口(0-65535) 传输协议(常用的有TCP/IP,UDP)网络模型:OSI参考模型,TCP/IP参考模型学习javase主要是在传输层和网际层进行学习。 IP类InetAddress,没有构造方法。import java.net.*;class I原创 2016-11-01 20:54:19 · 461 阅读 · 0 评论 -
JAVA简易版坦克大战
package mytankgame;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileReader;import java.io.FileWriter;原创 2016-11-18 18:00:05 · 2811 阅读 · 0 评论 -
JAVA基础 day15 JAVA泛型的使用
泛型:JDK1.5版本后出现的新特性。用于解决安全问题,是一个安全机制。 泛型格式:通过<>来定义要操作的引用数据类型泛型在集合框架中很常用,带<>的都可以使用泛型。泛型可以避免强转问题。例子import java.util.*;class GenericityDemo{ public static void main(String []args) {原创 2016-10-12 22:07:14 · 381 阅读 · 0 评论 -
JAVA基础 day14 集合框架 迭代器 List和Set常用子类应用
集合框架: 为了方便对多个对象进行操作,就对对象进行存储。集合就是存储对象最常用的方式之一。集合长度是可变的,并且可以存储不同类型的对象。集合在util包中。集合框架的大概描述。 最顶层是collection,下面最常用的是LIst和Set,下面各有一些最常用的子类。 collection接口中有一些通用的方法,可以查阅API进行学习使用。在集合中取出元素要通过迭代器接口(Iterato原创 2016-10-11 20:03:40 · 493 阅读 · 0 评论 -
JAVA基础 day21 字节流的输入和输出 字节流的缓冲区 (自己实现BufferedInputStream) 键盘输入 转换流的用法 改变标准输入输出设备 IO流操作的基本规律
字节流: OutputStream:字节流写入基类。字节流并不需要刷新操作,因为字符流底层是将传入的字节先存放在一个数组中,然后去查表得到字符,所以需要刷新。而字节流是直接将数据传送到目标位置。FileOutputStream 文件字节写入操作类import java.io.*;class FileOutputStreamDemo{ public static void main(S原创 2016-10-21 17:19:40 · 1374 阅读 · 0 评论 -
JAVA基础day06 static关键字 静态方法的运用 java程序文档的制作
被static修饰的静态变量。即可以直接用对象调用,也可以使用类名调用。例如,类名.变量。static修饰的数据存储在共享区(方法区或者数据区)static特点:随着类的加载而加载普通成员变量也叫实例变量,静态成员变量也叫类变量,因为可以直接通过类名调用。静态方法只能访问静态成员,非静态方法即可以访问静态成员,也可以访问非静态, 静态方法中不可以使用this,super关键字,因为静态优先于对象先原创 2016-09-11 19:45:18 · 773 阅读 · 0 评论 -
JAVA基础day07 继承 final关键字 抽象类 接口 的学习
继承:关键字 extends class 子类 extends 父类{}; 提高了代码的复用性 让类与类之间有了关系,有了这个关系,才有了多态的特性。 java只支持单继承。因为多继承将会带来安全隐患,例如 类A和类B有相同名称的方法时,类C同时继承A,B,将不确定会运行哪个方法。子类和父类拥有非私有的同名变量时,可以用super访问父类变量。 this是本类的引用。supe原创 2016-09-12 21:49:52 · 830 阅读 · 0 评论 -
JAVA基础day08 多态特性 object类
多态:事物存在的多种体现形态。 例子:abstract class Animal{ abstract void eat(); } class Cat extends Animal{ public void eat(){ System.out.println(“吃鱼”); } public void sound(){ System.out.println(“原创 2016-09-13 17:48:34 · 646 阅读 · 0 评论 -
JAVA基础 day09 内部类 和 匿名内部类的应用
内部类:一个类的内部创建一个类 内部类可以直接访问外部类的成员,包括私有。 外部类如果要访问内部类,必须建立对象。main函数中创建内部类的格式。 外部类.内部类 对象名称=new 外部类().new 内部类(); 内部类访问外部类的成员时 需要加上外部类的名臣 外部类.this.成员。 当内部类被static修饰后,内部类就只能直接访问外部类的静态成员。 当内部类中定义了静态成原创 2016-09-16 13:51:48 · 721 阅读 · 0 评论 -
JAVA基础day02 java关键字 进制转换 运算符学习
1.java关键字和标识符,关键字不能再使用,main不是关键字。 2.掌握了各种进制的转换。 3.&和&&的区别:&不管有多少个表达式,都进行判断。 &&只要第一个表达式为false,后面的不运行。 |和||的区别:|不管有多少个表达式,都进行运行判断。 ||只要第一个表达式为true,后面的不运行。 4.& 与运算,有假为假,全真为真。 | 或运算,有真为真,全原创 2016-09-06 21:53:27 · 743 阅读 · 1 评论 -
JAVA基础 day10 异常的处理 和 包的运用
异常:程序运行过程中出现的不正常。 异常的格式 try { 需要被检测的代码 } catch(异常类 变量) { 处理异常的代码 } finally { 一定会执行的语句 }可以直接在定义的功能上抛出异常 throws 。自定义异常。需要定义一个类继承Exception类。 然后通过throw关键字抛出异常对象。throw new 异常类(); 方法内部抛出异常原创 2016-09-19 18:39:28 · 661 阅读 · 0 评论 -
JAVA基础 day12 线程间通信 多线程一些常用方法
等待唤醒机制 wait(),notify(),notifyAll()等方法都使用在同步中,因为要对持有锁的线程进行操作,他们都在object类中。 生产者和消费者 多线程(停止线程):run方法结束就停止了线程。开启多线程时,运行代码通常是循环,控制住循环,就可以结束run方法,就可以停止线程。 interrupt方法可以强制结束线程。守护线程:也叫后台线程。在线程开启前使用setDaemo原创 2016-10-08 22:12:28 · 406 阅读 · 0 评论 -
JAVA基础day03 循环 函数运用及函数的重载
循环:while(先判断再执行),do—while(先执行一次,然后判断),for循环(第一个语句中定义的变量,出循环后不能使用,只在for语句内有效)循环中可以为循环取名字,称为标号。 w:for( ){ q:for( ){break w;} }continue和break单独存在时,下面不可以有其他语句,会报错,因为执行不到。函数里面原创 2016-09-07 22:19:04 · 736 阅读 · 0 评论 -
JAVA基础day04 数组学习 排序和查找基本算法
定义数组 int []arr=new int[n]; int []arr=new int[]{1,2,3}; 数组名称.length 获取数组的长度。选择排序:每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。冒泡排序:它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访原创 2016-09-08 21:56:45 · 819 阅读 · 0 评论 -
JAVA基础 day13 String类和StringBUffer类的常用方法 基本数据类型包装类的学习
String类equals方法覆写了object类中的方法,作用是比较两个字符串是否相同。 获取操作: int length():获取字符串的长度。char charAt(int index):获取指定位置的字符。int indexOf(int ch):返回字符在字符串中第一次出现的位置。int indexOf(String str):返回str在字符串中第一次出现的位置String sub原创 2016-10-10 17:14:04 · 384 阅读 · 0 评论 -
JAVA基础 day11 多线程 同步代码块 死锁问题
进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。线程 是进程中的一个独立控制单元。线程控制着进程的执行。当一个程序启动时,就有一个进程被操作系统(OS)创建,与此同时一个线程也立刻运行,该线程通常叫做程序的主线程。创建新执行线程有两种方法。 一种方法是将类声明为 Thread 的子类。该子类应重写 Thread 类的 run 方法。 cl原创 2016-09-22 16:26:59 · 538 阅读 · 0 评论 -
JAVA WEB从入门到精通day12 Cookie和Session详解
Cookie和Session详解Cookie学习Cookie由w3c组织提出,是属于Http扩展协议的一部分。Cookie实际上是一小段文本信息,服务器如果需要记录客户端的身份,就保存一个cookie在客户端(通过设置响应头的方式),当浏览器再次请求该网站时,浏览器就会把请求的网址和保存的cookie再发送给服务器(通过设置请求头的方式),服务器检查cookie,来辨认用户状态。Cookie原创 2017-03-02 15:37:11 · 718 阅读 · 0 评论