抽象类和接口
来源:互联网 发布:game center数据删除 编辑:程序博客网 时间:2024/05/21 14:54
1.抽象类/**1. 抽象方法一定存在于抽象类中,抽象方法和抽象类需要abstract修饰!2. 抽象类不能实例化.3. 如果抽象类中多个抽象方法,而其子类只继承了一个抽象方法,则该子类为抽象类,故也无法实力化。4. 抽象类只能被子类覆盖其全部的抽象方法,才能建立子类对象!5. 抽象类中可以有非抽象方法*///该子类未覆盖父类func1的抽象方法,故子类为抽象类,不能实例化。编译失败abstract class Person{ abstract void func(); abstract void func1(); void func2(){ System.out.println("非抽象方法2!"); };}class Student extends Person{ public void func(){ System.out.println("非抽象方法!"); }} class AbstractDemo{ public static void main(String[]args){ Student st =new Student();//子类为抽象类,不能实例化 st.func(); } } //该父类未中有抽象方法,类名未被abstract修饰,编译失败class Person{ abstract void func(); //abstract void func1(); void func2(){ System.out.println("非抽象方法2!"); };}class Student extends Person{ public void func(){ System.out.println("非抽象方法!"); }} class AbstractDemo{ public static void main(String[]args){ Student st =new Student(); st.func(); } } //编译成功abstract class Person{ abstract void func(); //abstract void func1(); void func2(){ System.out.println("非抽象方法2!"); };}class Student extends Person{ public void func(){ System.out.println("非抽象方法!"); }} class AbstractDemo{ public static void main(String[]args){ Student st =new Student();//子类为抽象类,不能实例化 st.func(); } } 2.接口/**1. 接口中所有方法都是抽象方法,故可以看成是特俗的抽象类2. 接口的成员有固定的修饰符 常量: public static final 方法: public abstract,接口中所有方法都是public权限。 */interface Inter{ public static final int NUM = 3; public abstract void show();} class SubInter implements Inter{ public void show(){ System.out.println("实现接口!"); } class InterfaceDemo{ public static void main(String args[]){ SubInter sb = new SubInter(); sb.show(); }
0 0
- 抽象接口和抽象类
- 接口和抽象类
- 接口和抽象类
- 接口和抽象类
- 抽象类和接口
- 抽象类和接口
- 抽象类和接口
- 接口和抽象类
- 抽象类和接口
- 抽象类和接口
- 接口和抽象类
- 抽象类和接口
- 抽象类和接口
- 抽象类和接口
- 抽象类和接口
- 接口和抽象类
- 抽象类和接口
- 接口和抽象类
- gradle基础
- 学习Java总结之一
- testlink第一次测试导出报告
- 树懒_移动开学笔记_day42&day43_安全卫士_看门狗_签名
- 《软件测试》学习笔记
- 抽象类和接口
- 浅析mysql、sql server和oracle的区别
- 两端的世界
- 软件测试的烦恼
- java虚拟机部分笔记
- UICollectionView实现书本翻页布局
- Testlink 与 mantis的集成w
- OC- OC数值类型、NSNumber、NSString、NSMutableString
- 僵死进程和孤儿进程