自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 c++ const关键字

先忽略类型名(编译器解析的时候也是忽略类型名),我们看 const离哪个近。“近水楼台先得月”,离谁近就修饰谁。const int * p ;//const 修饰*p,p 是指针,*p是指针指向的对象,不可变int const * p;//const修饰*p,p 是指针,*p是指针指向的对象,不可变int*const p;//const修饰p,p 不可变,p 指向的对象可变

2013-06-27 08:38:43 554

转载 VIM中空格和TAB的替换

http://andylin02.iteye.com/blog/830430

2013-06-24 15:30:11 727

原创 Java中的equals方法和hashcode方法

注意事项:①equal方法必须做到自反、对称、传递、一致、非空(与null不相等);②改写equal就必须改写hashCode,否则你的类将不可以成功充当Map的key。PS:编写一个完美的equals方法的建议:①是否引用同一个对象②other是否为null③this和other是否属于同一个类④将other转换为相应的类类型变量

2013-06-13 16:15:55 579

原创 Java static import

static import 是java 5新增功能,目的就是导入该类中的静态成员,使之和本类成员一样直接调用。如果使用import导入类,则在调用该类的成员时,必须使用(类名.成员名)的形式进行访问。

2013-06-13 16:08:16 593

原创 Java泛型

Java的泛型是靠擦除来实现的,编译器看到的只是原生类型。具体见《java编程思想》P373Set是个参数化类型,表示可以包含任何对象类型的集合;Set则是一个通配符类型,表示只能包含某种未知对象类型的一个集合;Set则是一个原生态类型,它脱离泛型系统。前两种是安全的,最后一种是不安全的。泛型只是在编译时强化它们的类型信息,并在运行时丢弃(或者擦除)它们的元素类型信息。擦除就是使泛型可以与

2013-06-13 16:06:55 556

原创 Java类的加载过程

JVM中类的装载是由ClassLoader和它的子类来实现的。Java ClassLoader 是一个重要的Java运行时系统组件,它负责在运行时查找和装入类文件的类。Java类的加载过程顺序如下:基类的static域→子类的static域→Main函数→基类的非静态域→基类的构造函数→子类的非静态域→子类的构造函数PS:关于ClassLoader的加载过程详见:http:

2013-06-13 16:05:27 540

原创 Java可变参数

Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。注意:可变参数必须位于最后一项。当可变参数个数多余一个时,必将有一个不是最后一项,所以只支持有一个可变参数。因为参数个数不定,所以当其后边还有相同类型参数时,java无法区分传入的参数属于前一个可变参数还是后边的参数,所以只能让可变参数位于最后一项。可变参数的特点:①只能出现在参数列

2013-06-13 15:57:42 563

原创 Java中的容器

Java中的容器主要分为两类:Collection和Map。Collection├List       接口│├LinkedList       链表│├ArrayList        顺序结构动态数组类│└Vector        向量│ └Stack       栈└Set(Hashset Treeset)Map├Hashtable├HashMa

2013-06-13 15:53:23 649

原创 Java中的协变

Java用到协变的两个地方:①如果A是B的父类,即A[]是B[]的父类,则用到A[]的地方可以用B[]代替;②在重写或者重载的时候,返回值类型不一致是不被允许的,但是在子类中可以以此来重写父类的方法,这就是协变。PS:但是在泛型中,却不能利用协变:基于上面的①,List和List没有什么关系。

2013-06-13 15:43:46 1039

转载 Java程序绑定:动态与静态

写在前面:动态绑定和静态绑定:如果是private,static,final方法或者是构造器,那么编译器将可以准确的知道应该调用哪一个方法,将这种调用方式称之为静态绑定。与此对应,如果调用的方法依赖于映射参数的实际类型,并且在运行时实现动态绑定,则称之为动态绑定。PS:每次调用方法都要进行搜索,时间开销相当大,所以虚拟机预先为每个类创建了一个方法表,其中列出了所有方法的签名和实际调用的

2013-06-13 15:39:41 800

原创 Java异常

Def:异常是指程序运行过程中可能出现的非正常状态。Java异常可以分为两类:可检查异常和非检查异常。可检查异常:Checked异常。非可检查异常:Runtime异常和Error。Checked异常:是指可以在编译阶段被处理的异常,所以它强制程序处理所有的Checked异常。Runtime异常:是运行时异常,表示虚拟机的通常操作中可能存在的异常,是一种的常见的运行错误,无须强制处理。

2013-06-13 15:28:05 681

原创 Java内部类

内部类Def:内部类是指定义在另一个类中的类。使用内部类的原因有以下三点:①内部类可以访问其外部类的任何数据,包括私有数据。②内部类可以对同一个包中的其他类隐藏起来。③当想要定义一个回调函数且不想编写大量代码时,使用匿名内部类比较便捷。注意事项:①内部类对象通过this指针引用其外部类的对象。②只有内部类可以是私有的,常规类只能试包可见性或者公有可见性。

2013-06-13 14:05:34 532

转载 JVM的内存设置

原文地址:http://www.cnblogs.com/zcshan/archive/2011/03/10/jvm.html在一些规模稍大的应用中,Java虚拟机(JVM)的内存设置尤为重要,想在项目中取得好的效率,GC(垃圾回收)的设置是第一步。PermGen space:全称是Permanent Generation space.就是说是永久保存的区域,用于存放Clas

2013-06-13 13:12:47 580

原创 Java中的Native关键字

Native方法一般用于两种情况:①在方法中调用一些不是由java语言写的代码。②在方法中用java语言直接操纵计算机硬件。

2013-06-13 13:09:53 613

原创 Java多态:重写和重载

Java是一种面向对象的语言,有四个典型的特征:抽象、继承、封装和多态。多态是指允许不同类型的对象对同一消息作出响应,Java多态性的概念可以被说成“一个接口,多个方法”。Java实现运行时多态性的基础是动态方法调度,它是一种在运行时而非编译期调用重载方法的机制,是面向对象程序设计代码重用的一个最强大的机制。Java的多态性表现为两种:一是重写override和重载overload。重写o

2013-06-13 12:46:46 902

空空如也

空空如也

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

TA关注的人

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