RTTI 和反射

2016-3-11 chenhui Java

Java 允许程序在运行时识别和使用类型信息,这里主要指的是对象和类的信息。 有两种方法来获取类型信息:RTTI 和反射。 RTTI 无处不在,最常见的就是对多态的支持。 在 Java 里,每一个类都有一个 Class 对象来描述他。我们知道,Java 程序编译后每一个类都会生成一个 class 文件,Java 虚拟机在加载...

阅读全文>>

评论(0) 浏览(155)

StringBuider

2016-3-11 chenhui Java

在 Java 中,我们可以用 String 类来定义一个字符串,并且可以任意修改他的内容。这看起来,要比 C 语言中的 char * 好用多了。 但实际上,String 虽然用起来方便,但是其本质上和 char * 相同都属于不可被修改的字符串。我们对 String 的修改,实质上都是新创建了一个 String 对象。 在我们对 String 对...

阅读全文>>

评论(0) 浏览(136)

异常

2016-3-11 chenhui Java

异常分为两步:抛出异常和捕获异常。 我们可以通过如下方法来抛出异常: if (t == null) throw new NullPointerExecption(" t == null"); throw 是抛出异常关键字,跟在他后面的是一个对象,这个对象表明了这个一个什么样的异常。如上 NullPointerExecption  ...

阅读全文>>

评论(0) 浏览(128)

容器

2016-3-11 chenhui Java

容器的作用是保存对象,根据保存方式的不同,Java 容器可分为 Collection 和 Map,这两个都是接口,前者保存一组服从某些规则的对象,后者是根据键值对来保存对象。 Collections 常见的子接口有 List、Queue、Set:List 是顺序保存对象(类似数组),Queue 是先进先出,Set 不允许保存相同的元素。他们本身也只是接口,其中最常用到的是...

阅读全文>>

评论(0) 浏览(136)

抽象类、接口

2016-3-11 chenhui Java

有时候,我们希望存在这样一个类:他不能被实例化为对象,他的存在是用来描述某一些类(子类)的共性,提供一些通用的接口。 这个类,就是抽象类。 与抽象类对应的,就是抽象方法。所谓的抽象方法,就是只有方法的定义,但没有方法体。这很容易理解,在 C/C++ 中,这就是函数指针。 abstract void f(); ...

阅读全文>>

评论(0) 浏览(147)

内部类

2016-3-11 chenhui Java

所谓的内部类,就是定义在另一个类里的类,他只能被外部类所访问,相对应的,他也可以访问外部类的成员变量和方法,即使他们是私有的。内部类的原理就在于,当外部类的对象创建内部类对象时,内部类对象会创建一个引用来指向外部类对象,我们可以在内部类对象中使用 外部类.this 来得到对外部类对象的引用。如果没有外部类对象,那么他就会报错。 有时候我们会想要在其他的类中使用这个...

阅读全文>>

评论(0) 浏览(139)

面向对象,类的封装、继承与多态

2016-3-11 chenhui Java

和 C++ 比较起来,Java 的面向对象更加纯粹,C++ 的面向对象只是其支持的一个特性,而在 Java 中则无处不在,除了基础数据类型(int、char 等)外的所有数据类型都是类,并且还有一点和 C++ 不同的是,他们都有一个相同的根类——Object 类,这么做的好处是所有对象都有一个共同接口。对于 C++ 而言,由于他的操作更加底层,所有不需要这个东西,相应的,C++ 会承担更多的风险。...

阅读全文>>

评论(0) 浏览(292)

输入输出(IO)

2016-1-1 chenhui Java

字节流类:     InputStream()     OutputStream()     所有字节输入输出类的基类,抽象类。     FileInputStream(File/FileDescriptor/String) ...

阅读全文>>

评论(0) 浏览(181)

Copyright ©2015-2016 freehui All rights reserved