【Java笔记】面向对象编程-抽象类与接口 - 抽象类、模板设计模式、接口、工厂设计模式、代理设计模式 - 总结四
面向对象编程-抽象类与接口
1. 抽象类的定义与使用 范例1:
abstract class Person{
private String name ; // 属性
public String getName(){ // 普通方法
return this.name;
}
public void setName(String name){
this.name = name ;
}
// {}为方法体,所有抽象方法上不包含方法体
public abstract void getPersonInfo() ; //抽象方法
}class Student extends Person{
public void getPersonInfo(){
System.out.println("I am a student");
}
}public class Test{
public static void main(String[] args) {
Person per = new Student() ; //实例化子类,向上转型
per.getPersonInfo() ; //被子类所覆写的方法
}
}
2.对象的实例化步骤 范例2:
abstract class A{
public A(){ //3.调用父类构造
this.print() ; //4.调用被子类覆写的方法
}
public abstract void print() ;
}
class B extends A{
private int num = 100 ;
public B(int num) { //2.调用子类实例化对象
super() ; //3.隐含一行语句,实际要先调用父类构造
this.num = num ; //7.为类中属性初始化
}
public void print() { //5.此时子类对象的属性还没有被初始化
System.out.println(this.num) ; //6.对应其数据类型的默认值
}
}
public class Test1{
public static void main(String[] args) {
new B(30) ; //1.实例化子类对象
}
}
3.接口定义 范例3:
interface IMessage{
public static final String MSG = "I am a biter" ; // 全局常量
public abstract void print() ; // 抽象方法
}
4.模板设计模式 链接1:
https://blog.****.net/qq_43109561/article/details/88616182
5.工厂设计模式 链接2 :
https://blog.****.net/qq_43109561/article/details/88616444
6.代理设计模式 链接3: