一、抽象类和抽象方法:
1.抽象方法:
使用abstract关键字修饰的方法,没有方法体,只有声明;必须被子类重写实现;(public abstract void 方法名());父类的名称抽象,创建对象没有意义时使用抽象方法。
(1)抽象方法的特征:
1)抽象方法不允许有方法体,只能以分号结尾;
2)抽象方法只能在抽象类中(含有抽象方法的类必须是抽象类);
3)抽象类中可以包含0个或多个抽象方法;
4)抽象方法必须被子类实现;
5)如果子类不能实现父类中的抽象方法,那么子类必须是抽象类。

2.抽象类:
包含抽象方法的类,使用abstract关键字修饰,要求子类必须定义具体实现。
(1)抽象类的特征:
1)抽象类不可以创建对象;
2)抽象类可以创建构造方法;
3)抽象类中的构造方法是提供给子类调用的;



(2)抽象类的成员:
成员变量,成员方法,静态方法,构造方法,final修饰的方法,抽象方法。


二、接口:
1.什么是接口:
接口就是比“抽象类”还“抽象”的“抽象类”,可以更加规范的对子类进行约束。全面地专业地实现了:规范和具体实现的分离。
2.接口的定义:
如果一个类中所有的方法均为 abstract 方法,那么这个类就可以声明为接口。
(1)接口声明格式:
[访问修饰符] interface接口名 [extends父接口1,父接口2…] {
常量定义;
方法定义;
}
3.接口中包含:
(1)抽象方法;
(2)非抽象方法;
(3)属性:(public static final)常量,public static final可省略;

4.接口和类的关系:
(1)类去实现接口中的抽象方法,实现关系,implements;
(2)一个类存在继承关系,又存在实现关系,extends在前,implements在后;
(3)当父类与接口中有完全相同的方法,父类优先于接口,子类实现的是父类中的方法;
(4)当父类中与接口中有同名方法,父类与接口中的方法,在子类/实现类中构成方法的重载;
5.接口的特性:
(1)接口具有传递性;
(2)接口的继承性(多继承);

6.接口的实现:
(1)编写接口;
(2)实现接口;
(3)接口(类型)new 实现类对象。


三、String类:
1.String类的定义:
String类是不可变的字符;字符串是常量;它们的值在创建之后不能更改。字符串缓冲区支持可变的字符串。因为 String 对象是不可变的,所以可以共享。
2.String常用方法:
(1)Int length()返回字符串的长度;
(2)Char charAt(int index)返回字符串中第index个字符;
(3)Int indexOf(String str)查找指定字符串出现的位置;
(5)Equals(Object anObject)将字符串与指定对象比较是否相等;
(6)compareTo(String anotherString)按顺序比较两个字符串。
(7)compareToIgnoreCase(String str)按顺序比较两个字符串,不考虑大小写。


3.常量池:
用于存储在编译期确定,并被保存在已编译的字节码文件中的一些数据,包括 final 修饰变量及字符串变量,和符号引用量。


四、内部类:
1.内部类的定义:
(1)将一个类定义在另一个类的内部,外部类的修饰符可以是默认或public;该类就称为内部类;
(2)内部类的修饰符可以是public,protected,默认,private及static;
(3)内部类可以访问外部类的成员变量,但外部类不能访问内部类的成员变量。
2.内部类的分类:
(1)成员内部类(非静态和静态);


(2)匿名类;

(3)局部类;

网友评论