抽象方法和抽象类
抽象方法和抽象类
抽象方法:
使用abstract修饰的方法,没有方法体,只有声明。其定义的是一种“规范”,就是告诉子类必须要给抽象方法提供具体的实现。
抽象类:
包含抽象方法的类就是抽象类。通过abstract方法定义规范,然后要求子类必须定义具体实现。通过抽象类,我们就可以做到严格限制子类的设计,使子类之间更加通用。
抽象类的使用要点:
1、 有抽象方法的类只能定义成抽象类。
2、 抽象类不能实例化,即不能用new来实例化抽象类。
3、 抽象类可以包含属性、方法、构造方法。但构造方法不能用来new实例,只能用来被子类调用。
4、 抽象类只能用来被继承。
5、 抽象方法必须被子类实现。
1 package com.sanyuan.abstract1; 2 3 public abstract class Student { 4 private String name; 5 6 abstract public void study(); 7 abstract public void exam(); 8 9 public String getName() { 10 return name; 11 } 12 13 public void setName(String name) { 14 this.name = name; 15 } 16 17 public Student(String name) { 18 this.name = name; 19 } 20 public Student() { 21 // TODO Auto-generated constructor stub 22 } 26 27 }
1 package com.sanyuan.abstract1; 2 3 public class StudentTest { 4 public static void main(String[] args) { 5 //Student s = new Student("黄某某"); //抽象类不能创建对象 6 Student s = new SxtStu(); 7 s.study(); 8 s.exam(); 9 } 10 11 } 12 13 class SxtStu extends Student{ 14 15 @Override 16 public void study() { 17 // TODO Auto-generated method stub 18 System.out.println("看视频,敲代码!!!"); 19 20 } 21 22 @Override 23 public void exam() { 24 // TODO Auto-generated method stub 25 System.out.println("能开卷考就好了!!!"); 26 27 } 28 29 }
浙公网安备 33010602011771号