Java面向对象高级--抽象类的基本概念------abstract
2013-09-25 15:00
489 查看
抽象类的概念:
包含一个抽象方法的类就称为抽象类。抽象方法:只声明但未实现的方法称为抽象方法,使用abstract关键字声明。
抽象类的定义及使用规则:
abstract class A{ // 是定义了一个抽象类 public static final String FLAG = "CHINA" ; // 全局常量 private String name = "XIAOWU" ; // 定义一个普通的属性 public void setName(String name){ this.name = name ; } public String getName(){ return this.name ; } public abstract void print() ; // 定义抽象方法 };
抽象类的子类覆写抽象类中的抽象方法。
abstract class A{ // 是定义了一个抽象类 public static final String FLAG = "CHINA" ; // 全局常量 private String name = "XIAOWU" ; // 定义一个普通的属性 public void setName(String name){ this.name = name ; } public String getName(){ return this.name ; } public abstract void print() ; // 定义抽象方法 };
class B extends A{ // 继承抽象类,因为B是普通类,所以必须覆写全部抽象方法
public void print(){
System.out.println("FLAG = " + FLAG) ;
System.out.println("姓名 = " + super.getName()) ;
}
};
public class AbstractDemo02{
public static void main(String args[]){
B b = new B() ;
b.print() ;
}
};
抽象类的思考:
abstract class A{ // 是定义了一个抽象类 public A(){ System.out.println("A、抽象类中的构造方法。") ; } }; class B extends A{ // 继承抽象类,因为B是普通类,所以必须覆写全部抽象方法 public B(){ super() ; System.out.println("B、子类中的构造方法。") ; } }; public class AbstractDemo03{ public static void main(String args[]){ B b = new B() ; } };
abstract class Person{ private String name ; // 定义name属性 private int age ; // 定义age属性 public Person(String name,int age){ this.name = name ; this.age = age ; } public void setName(String name){ this.name = name ; } public void setAge(int age){ this.age = age ; } public String getName(){ return this.name ; } public int getAge(){ return this.age ; } public abstract String getInfo() ; // 抽象方法 }; class Student extends Person{ private String school ; public Student(String name,int age,String school){ super(name,age) ; // 指定要调用抽象类中有两个参数的构造方法 this.school = school ; } public void setSchool(String school){ this.school = school ; } public String getSchool(){ return this.school ; } public String getInfo(){ return "姓名:" + super.getName() + ";年龄:" + super.getAge() + ";学校:" + this.getSchool() ; } }; public class AbstractDemo04{ public static void main(String args[]){ Student stu = new Student("张三",30,"清华大学") ; System.out.println(stu.getInfo()) ; } };
相关文章推荐
- Java面向对象高级--抽象类的基本概念------abstract
- Java面向对象高级--接口的基本概念--------interface、implements
- 面向对象高级——final关键字的使用以及抽象类的基本概念
- 继承的基本概念(Java面向对象高级篇)
- 第三章 java面向对象基本概念
- java学习之旅45--面向对象_18_多态_基本概念_强制转型问题_instanceof运算符
- Java学习笔记之 面向对象基本概念
- Java与C++在面向对象基本概念上的区分
- Java基础——对象和类1(面向对象基本概念)
- Java-面向对象(高级篇)--抽象类的基本概念
- 面向对象高级——接口的基本概念和对象的多态性
- java面向对象上:类的高级概念
- 一:Java之面向对象基本概念
- Java面向对象高级--继承的基本实现--extends
- Java基础知识:面向对象-基本概念
- java面向对象-抽象类abstract
- Java面向对象程序设计的基本概念
- Java学习课堂笔记——面向对象程序设计的基本概念
- Java面向对象高级--抽象类与接口的应用
- javaSE_8系列博客——Java语言的特性(一)--关于面向对象基本概念的理解(2)--对象