赞
踩
子类继承父类的特征和行为。
class 父类{
}
class 子类 extends 父类{
}
extends/implements
子类不继承父类的构造器,只调用(可隐式)。
若父类构造器带参数,则必须显式调用,通过super(A,B)传参。
重写和重载是Java多态性的不同表现。重写是父类和子类之间多态性的表现。重载是一个类的多态性表现。
子类中定义了一个与父类中方法名称相同、参数列表相同、返回类型一般相同的方法,子类方法的实现覆盖了父类方法的实现。
在同一个类中,方法名字相同,参数列表不同(参数的数量、类型、顺序)。返回类型随意。
不同类中也可以存在重载,子类可以重载父类的方法。
同一个行为具有多个不同表现形式或形态的能力。
同一个接口使用不同的实例执行不同操作。
虚函数的存在是为了多态。
Java里的普通函数就相当与C++的虚函数。
final才是非虚函数。
abstract 关键字声明
不能实例化对象的类,必须被继承才能被使用。
只声明,没有定义,方法名后直接分号。
用private修饰属性,用getter和setter提供访问接口。
Intereface是抽象方法的集合。
没有包含任何方法的接口。
只是为了给类做标记。
两种目的:
一个特殊的类,其中的枚举值都是public static final的。
enum Color
{
RED, GREEN, BLUE;
}
public class Test
{
// 执行输出结果
public static void main(String[] args)
{
Color c1 = Color.RED;
System.out.println(c1);
}
}
//RED
values()返回全部值
oedinal()返回索引
valueOf()返回指定字符串值的枚举常量
enum Color { RED, GREEN, BLUE; } public class Test { public static void main(String[] args) { // 调用 values() Color[] arr = Color.values(); // 迭代枚举 for (Color col : arr) { // 查看索引 System.out.println(col + " at index " + col.ordinal()); } // 使用 valueOf() 返回枚举常量,不存在的会报错 IllegalArgumentException System.out.println(Color.valueOf("RED")); // System.out.println(Color.valueOf("WHITE")); } }
可以有自己的变量、方法和构造函数。
构造函数会在调用时实现n次(n为枚举常量个数)
类似于文件夹,用于区别类的命名空间。
把相互联系的【类、接口、枚举、注释】组织在同一个包中。
———————————————以上为面向对象部分—————————————————
插入和删除元素相对慢。
int[ ] array = new int[5];
List<String> arrayList = new ArrayList<>();
List<Integer> linkedList = new LinkedList<>();
用于存储不重复的元素
Set<String> hashSet = new HashSet<>();
用于存储键值对
LIFO后进先出
Stack<Integer> stack = new Stack<>();
FIFO先进先出
优先队列的基础,可实现最大堆和最小堆。
TreeNode类型
Java没有内建的图类
动态数组
一个抽象类,键值对
没看进去,暂时跳过
链表
散列表,键值对映射
实现了Map接口。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。