java基础
一个资深工程师从头讲解java基础。
养家糊口的程序媛
人外有人,天外有天
展开
-
java基础之集合List、Set、Map的区别
一、List、Set、Map的区别(1).从类的继承层次上看List和set都是继承自Collection接口。而Map是自成一体系。(2).List、set、Map作为Java集合框架,对集合内的元素的存储也是各有特点,List和set是单值存储,map则是以键值对的形式存储。(3).List按元素放入顺序存储元素,元素是可重复的,而set中元素的位置则是由其hashco原创 2015-09-28 20:20:01 · 878 阅读 · 0 评论 -
java基础之get和post的区别
1、表单的method属性如果是get,那么所有的参数信息都会显示在浏览器的地址栏里面,当我们使用浏览器地址栏输入网址的方式来发送请求时,那么该请求一定是get方式。2、对于get方式,底层是将所有参数附加在请求资源的后面一起传递的对于post方式,底层是将所有参数附加在请求参数的最后一行的下一行的下一行3、对于get方式,servlet采用doGet方法来进行处理,对于post方式,servlet采用doPost方法来进行处理。原创 2014-07-31 20:58:24 · 1345 阅读 · 4 评论 -
java基础之HTTP协议详解
HTTP协议通信过程详解HTTP请求详解HTTP响应详解原创 2014-07-31 07:08:04 · 1582 阅读 · 5 评论 -
java基础之synchronized用法
关于synchronized关键字的作用:1、在某个对象的所有synchronized方法中,在某一时刻,只能有一个唯一的一个线程去访问这些synchronized方法2、如果一个方法是synchronized方法,那么该synchronized关键字表示给当前对象(this)上锁。3、如果一个synchronized方法是静态(static)的,那么该synchronized关键字表示给当前对象所对应的class对象上锁。(每个类,不管生成多少对象,其对应的class对象只有一个)4、多线程:如原创 2014-07-31 06:41:16 · 1283 阅读 · 2 评论 -
java基础之内部类
关于内部类:java有四种内部类:①静态内部类(static inner class)②成员内部类(member inner class)③局部内部类(local inner class)④匿名内部类(anonymous innter class)原创 2014-06-22 13:42:28 · 1330 阅读 · 5 评论 -
java基础之泛型的继承
ArrayList<Object>继承了List<Object>,ArrayList<String>没有继承List<Object>List<?>等价于List<? extends Object>原创 2014-06-09 10:57:51 · 1477 阅读 · 4 评论 -
java基础之& 和 && 的区别
&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。 &&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str != null && !str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException如果将&&改为&,则会抛出NullPointerExcept原创 2014-05-31 08:25:42 · 3420 阅读 · 10 评论 -
java基础之集合List-ArrayList、LinkedList、Vector的区别
请问ArrayList、LinkedList、Vector的区别①ArrayList底层实际上是采用数组实现的(并且该数组的类型的Object类型的)②如果jdk6,采用Array.copyOf()方法来生成一个新的数组,如果是jdk5,采用的是System.arraycopy()方法(当添加的数据量大于数组的长度时候)③List list = newArrayList()时,底层会生成一个长度为10的数组来存放对象 ④ArrayList、Vector底层都是采用数组实现的⑤对于ArrayLis原创 2014-05-30 07:03:36 · 6130 阅读 · 8 评论 -
java基础之static(静态)
静态的属性、方法等属于类而不是对象。静态的方法可以由类直接调用,不需要将类实例化。本篇主要说明:静态的代码、成员变量要比构造方法先执行。子类的构造方法会默认去调用父类的不带参数的构造方法,如果父类不提供不带参数的构造方法,则子类的构造方法要显示使用super(param),去调用父类的带参数的构造方法原创 2014-05-30 06:23:00 · 1590 阅读 · 9 评论 -
java基础之集合Set
1、集合当向集合Set中增加对象时,首先集合计算要增加对象的hashcode,根据该值得到一个位置用来存放当前的对象,当在该位置没有一个对象存在的时候,集合set认为该对象在集合中不存在,直接增加进去。如果在该位置有一个对象存在,接着将准备增加到集合中的的对象与该位置上的对象进行equals比较,若返回false,在进行一次散列,将该对象放到散列后计算出的新地址。若返回true,不会再将该对象增加到集合中 2、当重写equals方法时,必须要重写hashcode方法如果一个类的两个对象,使用equa原创 2014-05-27 07:05:17 · 1374 阅读 · 6 评论 -
java基础之问题:请说出hashCode方法、equals方法、HashSet、HashMap之间的关系
①HashSet是采用HashMap来实现的;这个HashMap的key就是放进HashSet中的对象,value就是一个Object类型的对象②当调用HashSet的add方法时,实际上是想HashMap中增加了一行(key-value对),该行的key就是往HashSet增加的那个对象,该行的value就是一个Object类型的常量。③HashMap底层采用数组来维护 ④调用增原创 2014-04-30 21:45:40 · 1720 阅读 · 9 评论 -
java基础之final关键字
final类型的成员变量初始化值:1、声明时候直接赋值2、构造方法中赋值,如果一个类中有多个构造方法,就要保证在每个构造方法中都要完成对final类型变量的初始化工作 3、静态final成员变量必须在声明时赋值,且不能在构造方法中赋值 4、final成员变量指的是引用不能改变,即该变量的引用不能在指向其他的对象,但是对象的内容是可以改变的,比如stringbuffer可以通过append、remove等对该对象的内容作出改变。原创 2014-04-30 21:30:28 · 1374 阅读 · 3 评论 -
JAVA基础之方法重写
1、子类中的方法与父类中的方法名字相同、返回值类型相同、参数列表相同2、子类中的方法的访问级别大于等于父类方法的访问级别3、子类中的方法抛出的异常范围小于等于父类方法中抛出的异常范围 java反射机制可以实现给类中的私有成员变量重新赋值。原创 2014-03-30 07:21:49 · 1214 阅读 · 7 评论 -
JAVA基础之再次解读String-创建几个对象
换工作了,当换工作或者找工作的时候,往往会激发人们的学习动力——多学一点就可以多要点工资(嘿嘿)。 吾乃凡人一个,虽平时都有学习的习惯,但此次投简历面试等还是好好的准备了一翻,学的都是基础知识,却又是更加深入一层的学习,深入到源码、原理层次。比以往的学习更加深刻且基础。接下来一系列的文章,都会与这些基础有关系。第一个基础就是:String-创建几个对象的例子。 S原创 2014-03-12 10:41:07 · 1706 阅读 · 11 评论