抽象类接口和继承
来源:互联网 发布:mac卸载战网客户端 编辑:程序博客网 时间:2024/05/01 22:01
抽象类接口和继承
一.抽象类
1. 形式: public abstract class类名{}
2. 抽象类中的属性:变量和常量都可以定义
3. 抽象类中的方法:构造方法、普通方法、抽象方法都可以拥有
4. 抽象类不能创建对象,虽然它能够有构造方法,但是这个构造方法不能够使用
5. 抽象类的继承 子类名 extends 抽象类
6. 子类在继承抽象类时,需要把抽象类中的所有抽象方法重写一遍
例如:
public abstract class Person{
public String name; //变量
public static final int age = 20; //常量,一定要初始化
public Person(){} //构造方法
public void eat () {} //普通方法
public static void study(); //抽象方法
}
public class Student extends Person{
Public void study(){
System.out.println(“学生在学习”); //重写抽象类的抽象方法
}
}
二.接口
1. 形式 public interface类名{}
2. 接口中的属性:只能够是常量
3. 接口中的方法:只能够是抽象方法
4. 由于接口中没有构造方法,所以接口不能够创建对象
5. 接口的继承 类名 implements接口名
6. 由于接口中的方法都是抽象方法,所以子类在继承接口时,需要把接口中的抽象方法重写一遍
7. 由于接口中只存在常量和抽象方法,所以常量和抽象方法前的修饰词可以省略不写。(不写 不代表 不是 常量和抽象方法)
例如:
public interface Person{
public static final String name = “张三”;
public abstract void eat();
}
public class Teacher implements Person{
public void eat(){ //重写Person接口的eat()方法
System.out.println(“老师在吃饭”);
}
}
三.抽象类和接口有什么用?
用于被继承,当作父类,而不是用来创建对象,使用来约束子类的方法定义
因为抽象类和接口的抽象方法在被子类继承时,一定要去重写这些抽象方法
四.普通类、抽象类和接口的区别
普通方法
抽象方法
构造方法
常量
变量
创建对象
普通类
可以
不可以
可以
可以
可以
可以
抽象类
可以
可以
可以
可以
可以
不可以
接口
不可以
可以
不可以
可以
不可以
不可以
五.This关键子
1.当前类的对象
2.首先看This在哪个方法中被使用,然后再找调用该方法的对象,则This指的是调用该方法的对象.
- 继承,接口和抽象类
- 继承、抽象类和接口
- 抽象类接口和继承
- 抽象类接口和继承
- C#中的继承 (继承、抽象类和抽象方法、接口)
- C#中的继承 (继承、抽象类和抽象方法、接口)
- 继承和组合、抽象类和接口
- 类、抽象类、接口、继承和对象
- 深入继承 - 抽象类和接口
- 深入继承 - 抽象类和接口
- 深入继承 - 抽象类和接口
- 继承之接口和抽象类区别
- 继承之接口和抽象类区别
- 深入继承 - 抽象类和接口
- java继承、接口和抽象类
- 复习继承和接口、抽象类
- 继承和多态、接口、抽象类
- 继承,接口,抽象类
- java学习线路
- SQL Server数据类型介绍
- 宝塔Linux面板忘记账号密码,恢复并设置方法
- Mysql 根据时间戳按年月日分组统计
- 吴恩达Coursera深度学习课程 DeepLearning.ai 提炼笔记(1-3)-- 浅层神经网络
- 抽象类接口和继承
- 23种设计模式(23):享元模式
- 非阻塞TCP套接字的要点 发表于 2015-04-22 | 分类于 网络编程 | 套接字的默认状态是阻塞的。如果一个套接字不能立即完成相应的调用,那么该线程就会被投入睡眠,等待相应的操
- jquery操作checkbox在二次选中勾选框时失效
- 找出数组中的逆序对的个数,既前一个数比后一个数大组成逆序对。
- Github与Git
- xamarin android用ISharedPreferences进行状态保持 会话保持 应用程序首选项保存
- oracle 根据日志恢复数据
- Cookie