1.Java类
用关键字class声明。
Java类只能用extends关键字单继承Java类。
举例:class My extends You
但可以用implements关键字实现多个Java接口,多个接口之间用","隔开。
举例:class My implements He,She
当同时继承类和实现接口时,对类的继承要放在前面。
举例:class My extends You implements He,She
类中有成员变量和成员方法,静态成员方法只能访问静态成员。因为静态成员是属于类的,而非静态成员是属于对象的。
1.1普通类
没有用final或abstract修饰的类。
它既可以继承某一个类或实现多个接口,也可以被别的类继承。
1.2终止类
用final修饰的类。
它可以继承某一个类或实现多个接口,但不可以被别的类继承。
1.3抽象类
用abstract修饰的类。
它可以继承一个类或实现多个接口,但同时它必须被别的类继承。
不然它这个类就没有意义,因为它不能直接创建实例,但可以创建其继承类的引用。
类中有抽象方法的必须用abstract声明为抽象类,类中没有抽象方法也可以用abstract将它声明为抽象类。
类中的抽象方法没有方法体,但必须用abstract声明。
举例:abstract void play();
当一个类继承一个抽象类时,若不实现抽象类中的抽象方法,则这个类也必须用abstract声明为抽象类。
2接口
用关键字interface声明接口。
它不可以继承类,但可以用关键字extends继承多个接口,多个接口之间用","隔开。
举例:interface My extends He,She
类继承接口时必须实现接口中的所有方法。否则必须用abstract关键字声明该类为抽象类。
接口中的方法都为抽象方法,没有方法体,加不加abstract关键字都可以。
接口中的成员方法都只能是"public abstract"型的,我们可以添加这两种修饰符中的任意几种修饰符。
但这样做没有任何影响,它还是"public abstract"型的。
接口中的成员变量都只能是"public static final"型的,我们可以添加这三种修饰符中的任意几种修饰符。
但这样做没有任何影响,它还是"public static final"型的。
PS:一般约定类中静态成员常量命名时所有字母都大写,接口中的所有成员变量命名时所有字母也全都大写。