美文网首页
Java笔记:final关键字、抽象类

Java笔记:final关键字、抽象类

作者: wiyee | 来源:发表于2016-07-11 21:24 被阅读0次

    final

    1. final关键字又被称为完结器,有终结的意思。
    2. final能声明类、方法、变量。
    3. 使用final声明的类不能被继承。
      使用final声明的方法不能被重写。
      使用final声明的变量变成常量,不能被修改。

    Java抽象类

    1. 概念:包含一个抽象方法的类就是抽象类。
    2. 抽象方法:声明而未被实现的方法,抽象方法必须使用abstract关键字声明。
    3. 抽象类被子类继承,子类(如果不是抽象类)必须重写抽象类中的所有抽象方法。
    4. 抽象类不能直接实例化,要通过其子类实例化。
    实例

    定义一个Person抽象类和其子类Employee,在子类中必须重写父类中的所有抽象方法

    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, int year, int month, int day)
       {
          super(n);
          salary = s;
          GregorianCalendar calendar = new GregorianCalendar(year, month - 1, day);
          hireDay = calendar.getTime();
       }
       public String getDescription()
       {
          return String.format("an employee with a salary of $%.2f", salary);
       }
       public void raiseSalary(double byPercent)
       {
          double raise = salary * byPercent / 100;
          salary += raise;
       }
       private double salary;
       private Date hireDay;
    }
    

    不能直接实例化Person对象,必须通过其子类进行实例化

          Person[] people = new Person[2];
          people[0] = new Employee("Harry Hacker", 50000, 1989, 10, 1);
    

    相关文章

      网友评论

          本文标题:Java笔记:final关键字、抽象类

          本文链接:https://www.haomeiwen.com/subject/iayjjttx.html