zoukankan      html  css  js  c++  java
  • Java面向对象-final关键字

    Java面向对象-final关键字

    final是终结 完结的意思;

    使用final声明的类不能被继承;

    使用final声明的方法不能被子类覆盖;

    使用final声明的变量不能被修改,即为常量;

    1,final修饰类

    我们建一个僵尸类:

     1 package com.java1234.chap03.sec10;
     2  
     3 /**
     4  * 僵尸类
     5  * @author user
     6  *
     7  */
     8 public final class JiangShi {
     9  
    10 }

    这类是final修饰的,我们再建一个Test类 继承JiangShi类:

    QQ鎴�浘20161008182201.jpg

    我们发现 编译报错了 说不能继承final类;

    2,final修饰方法

    我们再新建一个类 ,加一个final方法:

    1 package com.java1234.chap03.sec10;
    2  
    3 public class People {
    4  
    5     public final void action(){
    6         System.out.println("做一个良好公民!");
    7     }
    8 }

    我们搞一个类继承下People类:

    QQ鎴�浘20161008182804.jpg

    我们发现,编译出错,说不能重写父类final方法;

    3,final修饰的变量

    我们在People类搞一个final属性,然后在方法里修改这个属性;

    QQ鎴�浘20161008183820.jpg

    我们发现,编译出错,说final字段不能修改;

    final修饰字段的时候 一般和static一起使用,来定义一些不可变的静态常量 方便程序使用;

    1 package com.java1234.chap03.sec10;
    2  
    3 public class Common {
    4  
    5     /**
    6      * 静态常量
    7      */
    8     public static final String CHINA_CAPITAL="北京";
    9 }

    我们调用的话 直接类名.属性 即可;

    1 package com.java1234.chap03.sec10;
    2  
    3 public class Test{
    4  
    5     public static void main(String[] args) {
    6         System.out.println(Common.CHINA_CAPITAL);
    7     }
    8 }
  • 相关阅读:
    Git使用(真的有熟悉吗)
    webpack中webpack.config.js的相关配置表
    import和require(你有过疑惑么)
    webpack打包(离开脚手架,你还好吗)
    webpack再度学习
    最大子段和之分治法
    快速排序之随机快排
    棋盘覆盖问题(看完这个就好)
    稳定匹配问题(脱单就靠这波了)
    Jieba统计词频并生成csv文件
  • 原文地址:https://www.cnblogs.com/eaglezb/p/5970818.html
Copyright © 2011-2022 走看看