
深入理解Java中的接口和抽象类
对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。下面就说说Java中的接...
对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。下面就说说Java中的接...
枚举类也可以实现一个或者多个接口。与普通实现一个或者多个接口完全一样,枚举类实现一个或者多个接口时,也需要实现该接口所包含的方法。下面程序定义了一个GenderDesc接口。 public interface GenderDesc { vo...
枚举类也是一种类,只是它是一种比较特殊的类,因此它一样可以定义Field,方法。下面程序定义一个Gender枚举类,该枚举类里包含了一个name实例变量。 public enum Gender { MALE, FEMALE; // 定义一个...
Java5新增了一个enum关键字(它与class,interface关键字的地位相同),用以定义枚举类。枚举类是一种特殊的类,它一样有自己的Field,方法,可以实现一个或者多个接口,也可以定义自己的构造器。一个Java源文件最多只能定义...
一. 问题描述 eclipse项目中使用到BASE64Encoder,出现如下报错,但是发现工程中jdk提供了相关jar包: BASE64Encoder cannot be resolved to a type 或者 BASE64Decod...
在某些情况下,一个类的对象是有限而且固定的,比如季节类,它只有四个对象;再比如行星类,目前只有9个对象。这种实例有限而且固定的类,在Java里被称为枚举类。如果需要手动实现枚举类,可以采用如下方式: (1).通过private把构造器隐藏起...
Java5的泛型有一个很重要的设计原则是,如果一段代码在边缘的时候没有提出”[unchecked]未经检查的转换”警告,则程序在运行时不会引发ClassCastException异常,正是基于这个原因,所以数组元素的...
1.Properties类与Properties配置文件 Properties类继承自Hashtable类并且实现了Map接口,也是使用一种键值对的形式来保存属性集。不过Properties有特殊的地方,就是它的键和值都是字符串类型。 2....
在严格的泛型代码里,带泛型声明的类总应该带着泛型参数。但为了与老的Java代码保持一致,也允许在使用带泛型声明的类时不指定实际的类型参数。如果没有为这个泛型类指定实际的类型参数,则该类型参数被称作raw type(原始类型),默认是声明该参...
在定义类,接口时可以使用类型形参,在该类的方法定义和Field定义,接口的方法定义中,这些类型形参可被当成普通类型使用。在另外一些情况下,我们定义类,接口时没有使用类型形参,但定义方法时想自己定义类型形参,这也是可以的,Java5提供了对泛...
当使用一个泛型时(包括声明变量和创建对象两种情况),都应该为这个泛型类传入一个类型实参。如果没有传入类型实际参数,编译器会提出泛型警告。假设现在需要定义一个方法,该方法里面有一个集合形参,集合形参的元素类型是不确定的,那么应该如何定义呢?考...
所谓泛型,就是允许在定义类,接口,方法时使用类型形参,这个类型形参将在声明变量,创建对象,调用方法时动态指定(即传入实际的类型参数,也可称为类型实参)。java5改写了集合框架的全部接口和类,为这些接口,类增加了泛型支持,从而可以在声明集合...