1、抽象类
包含一个抽象方法的类就是抽象类
抽象方法
声明而未被实现的方法,抽象方法必须使用abstract关键字声明
抽象类被子类继承、子类(如果不是抽象类)必须重写抽象类中的所有抽象方法
定义格式
abstract class className{
属性
方法
抽象方法
}
抽象类不能直接实列化,要通过其子类进行实列化
2、final关键字
final关键字在java中被称为完结器,表示最终的意思
final能声明类,方法,属性
声明的类不能被继承
声明的方法不能被重写
声明的变量变成常量,常量是不可以被修改的
3、接口
接口是java中最重要的概念,接口可以理解为一种特殊的类,里面全部都是由全局变量和公共的抽象方法所组成
接口的格式:
interface interfaceName{
全局常量
抽象方法
}
接口的实现也必须通过子类,使用implements,而且接口是可以多实现的
一个字类可以同时继承抽象类和实现接口
代码:
1、
package N06;
abstract class ACb{
int age;
public void tell()
{
}
//抽象方法
public abstract void say();
public abstract void print();
}
class ACB extends ACb{
@Override
public void say() {
// 重写抽象方法
}
public void print()
{
}
}
public class N1 {
public static void main(String[] args) {
ACB ab = new ACB();
ab.age = 10;
ab.say();
ab.tell();
}
}
2、
package N06;
interface Inter{
public static final int AGE = 20;//全局常量大写
public abstract void tell(); //抽象方法
}
interface Inter01{
public static final int AGE01 = 20;//全局常量大写
public abstract void tell01(); //抽象方法
}
class A implements Inter,Inter01{
@Override
public void tell() {
// 重写抽象方法
System.out.println("重写抽象方法");
}
@Override
public void tell01() {
}
}
public class N2 {
/**接口
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
A a = new A();
a.tell();
System.out.println(a.AGE);
System.out.println(Inter.AGE);
}
}