Java关键字static 和final基础一


点击(此处)折叠或打开

  1. package com.pp;

  2. public class StaticFinal
  3. {
  4.     static int a =9 ;//成员变量:static成员变量,也叫静态成员变量.可以通过类名使用这个成员变量
  5.     final int FFb = 0;
  6.     
  7.     public static void run()
  8.     {
  9.         System.out.println("staic is runing");
  10.     }
  11.     public final void FFrun()
  12.     {
  13.         System.out.println("Final FFrun is runing");
  14.     }
  15.     
  16.     public static void OKrun()
  17.     {
  18.         System.out.println("父类OK staic is runing");
  19.     }
  20.     
  21.     public static void main(String[] args)
  22.     {
  23.         // TODO Auto-generated method stub
  24.         /**
  25.          * static关键字:可以用在属性、方法、类上。
  26.          * static修饰成员变量:标示这个类不管生成了多少个对象,这多个对象共同使用这一个static所修饰的属性.
  27.          * 可以通过类名使用这个静态成员变量
  28.          * 静态成员变量具有单独的内存区域。java推荐使用类名直接访问静态成员变量
  29.          */
  30.         StaticFinal ss01 = new StaticFinal();
  31.         StaticFinal ss02 = new StaticFinal();
  32.         ss01.a = 10;
  33.         System.out.println(ss02.a);
  34.         StaticFinal.a = 89;
  35.         System.out.println(ss02.a);
  36.         System.out.println(ss01.a);
  37.         
  38.         /*
  39.          * static修饰的方法也叫静态方法,静态方法具有单独的内存区域。java推荐使用类名直接访问静态方法。
  40.          * 类名.方法(参数....);
  41.          * static方法可以被继承,但是不能被重写。静态方法具有单独的内存区域。
  42.          */
  43.         StaticFinal.run();
  44.         
  45.         CC cbb = new CC();
  46.         cbb.OKrun();
  47.         cbb.FFrun();
  48.         
  49.         HKID hkid = new HKID();
  50.         hkid.FFrun();
  51.         
  52.         Pensol pp = new Pensol();
  53.         
  54.         //pp.adress = new Adress();//编译错误,因为改变了adress指向的对象的地址
  55.         pp.adress.name = "Shang Hai";//编译通过,因为adress所指向的地址没有变,只是对象里面name的内容改变了。
  56.         

  57.     }

  58. }

  59. class CC extends StaticFinal
  60. {
  61.     //static方法可以被继承,但是不能被重写。静态方法具有单独的内存区域。
  62.     public static void OKrun()
  63.     {
  64.         //super.OKrun();
  65.         System.out.println("子类CCOK staic is runing");//静态方法具有单独的内存区域,不在对象的内存中。
  66.     }
  67. }

  68. //当一个类被final修饰的时候,表示这个类是一个终态类,不能被继承。
  69. final class HKID extends StaticFinal
  70. {
  71.     //final修饰属性:当一个属性被final修饰的时候,表示这个属性是一个终态属性,不能被重新赋值。
  72.     final int b = 0; //标示 b是一个常量,final属性必须赋初始值
  73.     
  74.     //final修饰方法:当一个方法被final修饰的时候,表示这个方法是一个终态方法,不能被重写。
  75.     public static void OKrun()
  76.     {
  77.         System.out.println("子类HKID staic is runing");//静态方法具有单独的内存区域,不在对象的内存中。
  78.     }
  79. }


  80. class Pensol
  81. {
  82.     //adress所指向的对象的地址不能改变。
  83.     final Adress adress = new Adress();
  84. }

  85. class Adress
  86. {
  87.     String name = "Bei jing";
  88. }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lllanlovehua

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值