JAVA基础
PAcee1
这个作者很懒,什么都没留下…
展开
-
JAVA多态知识
1.多态的概念:同一个对象在不同时刻体现出来的不同状态。2.多态的前提: A:有继承或者实现关系。 B:有方法的重写。(如果没有重写,使用多态就没有意义) C:有父类或父接口引用指向子类对象。3.多态的分类 A:具体类多态class Father{}class Son extends Father{}Father f=new Son(); B:抽象类多态abstr...原创 2018-02-13 18:44:03 · 365 阅读 · 0 评论 -
Java多线程同步锁问题
一、引入问题 1.电影院卖票程序[java] view plain copy/* * 电影院卖100张电影票,一共3个窗口同时卖票。 */ public class MyRunnable implements Runnable{ private int tickets=100; public void run() { while(true) ...原创 2018-03-24 20:14:22 · 901 阅读 · 0 评论 -
JAVA IO流: PrintStream和PrintWriter
字节打印流 PrintStream字符打印流 PrintWriterPrintWriter与PrintStream的区别:作为处理流使用时,PrintStream只能封装OutputStream类型的字节流,而PrintWriter既可以封装OutputStream类型的字节流,还能够封装Writer类型的字符输出流并增强其功能。特点: A:只操作目的地,不操作数据源 B:可以操作任意类型的数...原创 2018-03-25 15:12:54 · 606 阅读 · 0 评论 -
Java线程的生命周期 图解
线程的生命周期(参照下图线程生命周期图解.bmp) A:新建 创建线程对象 B:就绪 有执行资格,没有执行权 C:运行 有执行资格,也有执行权 D:阻塞 因为一些操作使线程处于阻塞状态,即既没执行资格,又没执行权 而另外一些操作可以将它激活,使之变成就绪状态 E:死亡 线程对象变成垃圾,等待被回收线程生命周期图解.bmp...原创 2018-03-25 16:35:11 · 642 阅读 · 0 评论 -
Java序列化读写多个对象的方法
Person类用来序列化 public class Person implements Serializable{ private String name; private int age; public Person(String name, int age) { super(); this.name = name; this.age = age; } }方法一:存入文件时,...原创 2018-03-21 16:19:51 · 8065 阅读 · 6 评论 -
Java中的序列化和反序列化笔记及小注意事项
序列化流 ObjectInputStream,ObjectOutputStream1.概念: 序列化(ObjectOutputStream):可以把对象按照刘一样的方式写入文本文件或者在网络中传输 反序列化(ObjectInputStream):把文本文件中或网络中的流对象数据还原成对象 2.如何实现序列化呢? 让被序列化的对象所属类实现序列化接口Serializable。 该接...原创 2018-03-21 17:27:43 · 684 阅读 · 0 评论 -
Java反射基本概述及使用方法
反射概述: 反射机制就是在运行状态中,对任意一个类,都能够知道这个类的所有属性及 方法;对任意一个对象,都能调用任意的方法或属性。这种动态获取信息及动态调 用对象方法的功能称作Java语言的反射机制。 就是通过class文件对象,去使用该文件中的成员变量,构造方法,成员方法。 获取class文件的三种方式 1.通过Object类的getClass()方法 Person...原创 2018-03-31 18:53:25 · 1102 阅读 · 0 评论 -
Java各种集合各自特点和数据结构
Collection 单列集合 |-List 有序,可重复 |-ArrayList 底层是数组,查询快,增删慢 线程不安全,效率高 |-Vector 底层是数组,查询快,增删慢 线程安全,效率低 |-LinkedList 底层是链表,查询慢,增删快 线程不安全,效率高 |-Set 无序,唯一 |-HashSet 底层是哈希表 哈希表唯一依赖两个方法:h...原创 2018-03-11 22:17:36 · 1061 阅读 · 0 评论 -
Java中如何选择使用哪种集合
是否有键值对关系{ 是:Map 键是否需要排序?{ 是:TreeMap 否:HashMap 不知道就用HashMap } 否:Collection 元素是否唯一?{ 是:Set 元素是否需要排序?{ 是:TreeSet 否:HashSet } 否:List 线程安全吗?{ 是:Vector ...原创 2018-03-11 22:16:08 · 1489 阅读 · 0 评论 -
JAVA笔记-抽象类
抽象类 一、抽象类声明格式:abstract class xx 二、抽象类特点:1.被abstract修饰 2.抽象类中不一定有抽象方法,但有抽象方法一定是抽象类 abstract class A{ public void B(){} public abstract void B(){} //编译报错,抽象方法不能有方法体 public abstract...原创 2018-02-14 15:24:22 · 1127 阅读 · 0 评论 -
JAVA笔记-接口
接口 一、接口是用来扩展方法的 二、接口的特点: 1.接口用关键字interface来表示 interface 接口名{} 2.类实现接口用implements关键字 class 类名 implements 接口名{} 3.接口不能被实例化,但是可以用多态的方式实例化(类似抽象类) 4.接口的子类 a:可以是抽象类,但是意义不大 b:可以是具体类,要重写所有接口中抽象方法...原创 2018-02-14 16:33:10 · 581 阅读 · 0 评论 -
JAVA笔记-内部类
成员内部类 普通调用方法:Outer.Inner oi=new Outer().new Inner(); 静态调用方法:1.Outer.Inner oi=new Outer.Inner(); 2.Outer.Inner.show(); 内部类用private修饰: 无法再main函数中调用,怎么办呢? 在外部类中创建一个方法,用来判定是否可以调用此内部类。 class Out...原创 2018-02-21 12:39:19 · 384 阅读 · 0 评论 -
JAVA笔记-Object类
Object几个比较重要的成员方法 public int hashCode() 返回该对象的哈希值:哈希值是根据哈希算法计算出来的一个值,这个值和对象地址有关, 但不是实际地址,可以理解为地址值 public final Class getClass() 返回此Object运行的类 Class类方法: public String getName();Srting形式返回该类的类名 ...原创 2018-02-22 12:59:44 · 867 阅读 · 0 评论 -
JAVA笔记-API-Scanner类常用方法
Scanner类 构造方法一般用: public Scanner(InputStream source) ;它生成的值是从指定的输入流扫描的 成员方法: public boolean hasNextXXX();判断是否是这种类型的元素 public XXX nextXXX();获取该元素 例: Scanner sc=new Scanner(System.in); if(sc...原创 2018-02-23 21:21:16 · 360 阅读 · 0 评论 -
JAVA笔记-API-String类常用方法
String类 字符串:多个字符组成的一串数据,像是字符数组 字符串是常量,不能更改,字符串缓冲区可以更改 字符串值不能改变,但引用可以改变。 构造方法(常用): A:public String() B:public String(byte[] bytes)//数组转字符串,注意保存的是对应的ascii码 C:public String(byte[] bytes,int index,int...原创 2018-02-23 21:24:14 · 448 阅读 · 0 评论 -
JAVA笔记-API-StringBuffer
StringBuffer 线程安全(同步)的可变字符串 与String区别: 前者长度内容可变,后者不可 前者减少空间资源使用。 构造方法: StringBuffer() 容量=16 StringBuffer(int capacity) 容量=capacity StringBuffer(String str) 容量=16...原创 2018-02-24 22:25:07 · 253 阅读 · 0 评论 -
Java中IO流总结笔记
IO流 |--字节流 |--字节输入流 InputStream int read():一次读取一个字节 int read(byte[] bys):一次读取一个字节数组 |--FileInputStream |--BufferedInputStream |--字节输出流 OutputStream void w...原创 2018-03-17 17:50:50 · 465 阅读 · 0 评论 -
java动态代理原理及解析
代理:设计模式代理模式是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个真实对象的访问。代理类负责为委托类预处理消息,过滤消息并转发消息,以及进行消息被委托类执行后的后续处理。通过代理层这一中间层,有效的控制对于真实委托类对象的直接访问,同时可以实现自定义的控制策略(Spring的AOP机制),设计上获得更大的灵活性。java动态代理的类和接口(jdk1.6源码)1,java.la...转载 2018-04-01 17:26:43 · 323 阅读 · 0 评论