现在的位置: 首页 > 综合 > 正文

java抽象类用法

2013年12月10日 ⁄ 综合 ⁄ 共 1767字 ⁄ 字号 评论关闭
/**

   @version 1.00 2008-5-25

   @author WANGYIFEI

*/




import java.text.
*;



public class PersonTest

{  

   
public static void main(String[] args)

   
{  

      Person[] people 
= new Person[2];



      
// fill the people array with Student and Employee objects

      people[
0

         
= new Employee("Harry Hacker"50000);

      people[
1

         
= new Student("Maria Morris""computer science");



      
// print out names and descriptions of all Person objects

      
for (int i = 0; i < people.length; i++)

      
{  

         Person p 
= people[i];

         System.
out.println(p.getName() + ""

            
+ p.getDescription());

      }


   }


}




abstract class Person

{  

   
public Person(String n)

   
{  

      name 
= n;

   }




   
public abstract String getDescription();



   
public String getName()

   
{  

      
return name;

   }




   
private String name;

}




class Employee extends Person

{  

   
public Employee(String n, double s)

   
{  

      
// pass name to superclass constructor

      super(n);

      salary 
= s;

   }




   
public double getSalary()

   
{  

      
return salary;

   }




   
public String getDescription()

   
{  

      NumberFormat formatter

         
= NumberFormat.getCurrencyInstance();

      
return "an employee with a salary of "

         
+ formatter.format(salary);

   }




   
public void raiseSalary(double byPercent)

   
{  

      
double raise = salary * byPercent / 100;

      salary 
+= raise;

   }




   
private double salary;

}




class Student extends Person

{  

   
/**

      @param n the student's name

      @param m the student's major

   
*/


   
public Student(String n, String m)

   
{  

      
// pass n to superclass constructor

      super(n);

      major 
= m;

   }




   
public String getDescription()

   
{  

      
return "a student majoring in " + major;

   }




   
private String major;

}

【上篇】
【下篇】

抱歉!评论已关闭.