final类

一个类被final修饰符所修饰和限定,这个类不能被继承

final class A{

    public final void t(){

        System.out.println("A  t()");

    }

}

class B extends A{

}       //错误,子类不能被继承

2.final方法

用final修饰方法,该方法不能被重写(并不是子类一定不能定义同名方法,若父类方法为私有类型,子类运行定义该方法)


public final class TestFinal{

  public static int totalNumber= 5 ;

  public final int id;

  

  public TestFinal(){                                       // 在构造方法中对声明为final的变量id赋值

   id = ++totalNumber;

  }


     public static void main(String[] args) {

   TestFinal t = new TestFinal();

   System.out.println(t.id);  

   final int i = 10;

   final int j;

   j = 20;

     }

}


 


 


3.abstract类

用abstract修饰符修饰的类为抽象类

4.abstract方法

被abstract修饰的方法叫抽象方法

abstract class C{

 abstract void callme( );

 void metoo( ){

  System.out.println("Inside C's metoo( ) method");

 }

}

 

class D extends C{

 void callme( ){

  System.out.println("Inside D's callme( ) method");

 }

}

  

public class AbstractTest{

 public static void main( String args[ ] ){

  C c = new D( );

  c.callme( );

  c.metoo( );

 }

}