- 博客(79)
- 收藏
- 关注
原创 关于sleep()、yield()、wait()三种让线程暂停方法的区别
一、sleep()是让当前真正执行的线程暂停一段时间,并进入阻塞状态当当前线程调用sleep()方法进入阻塞状态后,在其睡眠状态内,线程不会获得执行的机会,即使系统没有其他可执行路径,处于sleep()中的线程也不会执行二、yield()方法是Thread类提供的一种静态方法,它可以让当前正在运行的线程暂停,但它不会阻塞该线程,他只是让该线程进入了就绪状态三、wait() 是objec
2017-07-29 17:02:42 5895 4
原创 关于两个比较器详解
一、comparable要想使用sort()方法进行排序,就必须要有一个前提:对象所在的类一定要实现Comparable接口,否则代码执行时会出现ClassCastException异常TreeSet是使用compare()方法实现排序1.两个对象Compareto()比较结果如果是0,认为两个对象意义上是同一个对象,到二个会被去掉2.两个对象equals()比较结果如果为true
2017-07-29 15:10:28 574
原创 实现聊天室一对一
第一步:建立一个服务器类public class Server { public static void main(String[] args) { //启动服务器接收线程 ServerReceiver1 sr = new ServerReceiver1(); Thread t1 = new Thread(sr); t1.start();
2017-07-28 17:33:33 2674
原创 网络编程
一、网络编程的概念网络编程!=网站编程二、为什么要使用socket?当两个应用程序之间需要交换数据的时候,用socket三、重要名词解释:套接字:ip地址+端口号ip地址:用来唯一标识一台主机端口号:用来唯一标示一个进程 占两个字节四、TCP和UDP的区别TCP:传输控制协议,面向连接的,安全的,有顺序的UDP:用户数据报协议面向无连接的,不安全的,无顺序的
2017-07-28 17:29:50 233
原创 多线程
一、进程的概念:程序的一次运行叫做一个进程 程序中至少包含一个进程二、线程一个进程中至少包含一个线程,线程是进程的程序中的不同执行路径三、多进程:在操作系统中同时运行多个任务,比如qq 四、多线程:一个程序中不同的执行路径,注意分支不是多线程,只是一个线程五、线程和进程的区别1.定义区别2.从系统开销上来说1.进程的开销比较大,虚拟机会为这个进程分配5个内存空间 2.线程的开销小,启动一个新的线程
2017-07-28 17:02:49 273 1
原创 IO
一、Input 输入 Output 输出二、新建一个文件File file =new file ("d:\\aa\\.hello.txt");boolean flag=file.creatNewFile();//判断是否创建三、创建文件夹File file =new file ("d:\\a");(注意File类不仅可以代表一个文件也可以代表一个文件夹)boolean fl
2017-07-25 17:43:35 222
原创 泛型
一、为什么要有泛型?目的:是为了提高程序的健壮性和易用性二、泛型的定义类型实参,定义类的时候 用一个占位符表示不知道使用的时候传入什么类型(形参),用的时候传入实际的类型(实参)三、泛型的使用public class Point {// 可以用任意一个字母 表示一个占位符 一般推荐用T Type private T x;// 经度 private T y;/
2017-07-25 17:43:19 262
原创 map hashMap
一、map MapHashtable HashMap 1.键值对 2.没有迭代顺序 SortedMapProperties LinkedHashMap 带有迭代顺序的HashMap NavigableMap
2017-07-25 17:43:03 274
原创 IO输入输出流
一、Input 输入 Output 输出数据从外界进入程序叫做输入 数据从程序流向外界叫做输出二、文件的操作文件的增删该查1.文件创建File file = newFile("c:\\io\\HelloIO.txt")boolean flag = file.createNewFile();创建成功返回true 创建失败返回false2.创建目录File fi
2017-07-25 17:42:39 247
原创 set hashSet 去重
一、Set SetHashSet SortedSet(接口)LinkedHashSet NavigableSet(接口) TreeSet1.HashSet特点:去重、无
2017-07-25 17:41:59 301
原创 集合(容器)hoshCode算法
一.object类的四个方法1.toString()方法通过重写object类的toString()方法实现对象的自我描述、自我介绍public String toString(){return 实例变量}举例代码如下:public class Student {private String name;private String age;private String
2017-07-25 17:40:15 247
原创 异常
一、如何处理异常try{//可能出现错误的代码}catch(异常类的类名 e){//处理错误的代码}演示代码:public class 运行异常 {//数组下标越界 RuntimeException /*public static void main(String[] args) { int [] arr={1,2,3}; try { for(
2017-07-24 11:24:56 194
原创 接口 interface
一、为什么需要接口?需求一直改变,所以用接口 ,体现了可维护可扩展的特点二、接口的定义一组规范的集合(包含属性规范、行为规范),用的最多的是行为规范public interface 接口名{};使用关键字interface注意:1.接口中的方法都是抽象方法 即使没有写public或者abstract 编译的时候也会帮你补全这两个字2.接口中的属性都是public sta
2017-07-24 11:23:37 237
原创 多态
1.多态:实例方法的动态绑定 动态联编后期绑定 好处:可以写出维护的通用性代码 能应对需求的不断变化 父类型 2.如何编写一个多态? 1.定义一个父类 (父类 接口 抽象类) 2.定义一个子类 (1)子类继承父类 重写父类的方法 (2)子类继承抽象类 重写抽象类的方法 (3)子类继承接口 实现接口的方法 3.定义一个测试类方法 方法参数
2017-07-24 11:22:43 188
原创 继承中的向上转型和向下转型
一、向上转型:建立在继承的基础上,子类型的对象赋值i父类型的引用Teacher teacher=new Teacher();Person person=teacher;//安全自动二、向下转型:父类型引用赋值给子类型引用,可以通过强制类型转换Teacher teacher=(Teacher)Person;//不安全 不自动注意:向上转型会丢失子类独有的行为
2017-07-24 11:22:15 1031
原创 super指针
super 指向隐式父类创建的父类对象一. 使用super()调用父类的构造函数(1) super()在子类构造函数中 如果什么也不写 相当于写上 super() 调用父类默认的构造函数注意: 这时 父类中 如果写了带参数的构造函数,一定要把不带参数的默认的构造函数加上否则会报错2. super(参数) 调用指定的父类构造函数public Student(int sno
2017-07-24 11:21:36 714
原创 继承中的对象初始化顺序(内存结构)和继承类初始化
private 修饰的属性 和方法 不能被继承 父类中 private 修饰的属性 比如 private Benchi bmw = new Benchi(); 在子类对象中存在不存在?其实是有的! 子类对象包含父类中所有的属性的.... 一.隐式的创建父类的对象1. 给父类对象的实例变量分配空间、默认初始化2. 声明时初始化、初始化块初始化3. 构造函数初始化 二.创
2017-07-24 11:21:23 340
原创 继承中的访问权限修饰符
一.修饰类的1.public 共有的2.deflaut 默认的 3.protected(受保护的) 4.public(公有的) 二、修饰类类的成员的访问权限修饰符 本类 本包 子类 任何地方private(私有的) okdefault(默认的 包权限) o
2017-07-24 11:20:56 663
原创 组合和继承
一、可复用分类1.组合 2.继承二、组合可以理解成has a组合: 部分只能属于一个整体三、组合语法类A 组合 一个类B的对象class A { B b = new B();//组合}四:依赖关系把一个对象 定义成局部变量 并且调用该对象的方法 这时候会产生依赖五:继承可以理解成is a 六、继承语法使用关键字extendspub
2017-07-24 11:20:39 211
原创 对象的初始化块。对象初始化过程
1.初始化块作用: 和构造函数一样, 是用来给对象的属性进行初始化..2.对象初始化块 是优先于构造函数执行的,这样就解决了代码冗余问题3.格式:public class Student{//1.属性//4.对象初始化块 { } //3.构造函数 //2.方法 } 4.对象初始化过程Student s1 = new Student(1
2017-07-21 15:53:51 262
原创 集合 ArrayList
1.集合类的继承关系图 Collection(集合类的父接口)Set(接口 数学中的集合) List(接口 列表) Queue(接口 队列) Object(排序工具类) 单独的接口Map--Arrays(排序数组的工具类)--Collec
2017-07-17 19:37:11 250
原创 String、StringBuilder和StringBuffer三者区别
String、StringBuilder和StringBuffer三者区别
2017-07-15 10:16:48 221
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人