集合框架
java集合框架包括 Collection 和 Map 两种,Collection 存储着对象的集合,而 Map 存储着键值对(两个对象)的映射表。
Collection
Collection下包括Set、List、Queue,各自又包含了使用不同方式的实现。
Set
Set下包括TreeSet,HashSet,LinkedHashSet。其中TreeSet基于红黑树实现。
java集合框架包括 Collection 和 Map 两种,Collection 存储着对象的集合,而 Map 存储着键值对(两个对象)的映射表。
Collection下包括Set、List、Queue,各自又包含了使用不同方式的实现。
Set下包括TreeSet,HashSet,LinkedHashSet。其中TreeSet基于红黑树实现。
类就是用户定义好的原型,可以通过类创建对象,类中定义好了一系列的属性或者是函数。对象是真正的实体。当为一个类创建了对象,也可以说是实例化了这个类,java中有几种创建类的方式。
当只是简单地声明一个类变量时,如Object a
,不同于原始变量int、double等声明变量时就分配好了内存,这样的声明方式并没有创建好一个对象,需要通过new关键字来触发类构造器,并为这个对象分配好内存。所有类都至少有一个构造函数,如果没有定义,Java编译器会自动创建一个无参构造函数。这个构造器会调用其父类的无参构造函数。
在介绍封装、继承与多态之前,需要先了解java中的修饰符,修饰符有两类:
一类是控制访问权限的,一类是实现其他功能的。控制访问权限的修饰符有
1 | // 以下为类修饰符 |
实现其他功能的修饰符有:
1 | // 以下为类修饰符 |
封装可以将实现细节隐藏起来,其最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。
在继承中,先了解两个概念:父类和子类,父类就是被继承的类,子类就是继承其他类的类,在jva中,继承使用extends关键字或implements关键字。java中类的继承是单一继承,一个子类只能拥有一个父类。所有 Java 的类均是由java.lang.Object 类继承而来的。通过使用关键字 extends ,子类可以继承父类的除 private 属性外所有的属性。Implements 关键字在类继承接口的情况下使用,可以多继承接口。
重写是子类对父类的允许访问的方法的实现过程进行重新编写!返回值和形参都不能改变。
子类在声明变量时,可以使用父类类型,这是因为在编译阶段,只是检查参数的引用类型,然而在运行时,Java 虚拟机 (JVM) 指定对象的类型并且运行该对象的方法。需要注意的是构造方法不能被重写。需要在子类中调用父类的被重写方法时,要使用 super 关键字。
重载 (overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。构造函数是可以重载的。
通过继承、重写、重载可以以多种不同的方式实现某个操作,便可以实现多态。除此之外,java中还有接口和抽象类以实现多态。
接口通常以interface来声明。一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类。