zoukankan      html  css  js  c++  java
  • java中的关键字static(静态变量)和final定义常量

    package point;
    
    class Point {
        
        int x = 0;
        int y = 0;
        static int z = 100; // 定义静态变量z,类变量
        static final double PI = 3.1415926;// final定义常量,它的值在运行时不能被改变
    
        Point(int a, int b) {
            //PI=3.1415926;
            /*
             * 当使用静态常量的时候,不能在构造函数中初始化, 因为静态时,常量已经变成类的常量了
             */
            x = a;
            y = b;
        }
    
        Point() {
            this(1, 1); // 必须作为构造函数的第一条语句
        }
    
        static void output() {
            System.out.println("hello,output() called");
            // System.out.println(x);//此时尚未给x,y分配内存空间,
            /*
             * Point2.java:16: non-static variable x cannot be referenced from a
             * static context System.out.println(x); ^ 1 error
             */
            System.out.println(z);
        }
    
        
        @SuppressWarnings("static-access")
        public static void main(String[] args) {
            
            Point.output();
            /*
             * 当声明output为静态方法(static)时,直接使用类名Point, 来调用output()方法,
             * 因为这样一个静态方法只属于类本身, 而不属于某个对象,把这种方法称为类方法 而对于非静态方法,称之为实例方法,即对象的方法
             */
            Point pt2 = new Point();
            pt2.output();
            // 当然也可以使用类的实例,即对象pt2,使用pt2来调用静态方法
            Point pt3 = new Point();
            Point pt4 = new Point();
            pt3.z = 5;
            System.out.println(pt3.z);// 显示的是5,因为z是静态变量,类的变量
            pt4.z = 1000;
            System.out.println(pt3.z);// 显示的是1000,因为z是静态变量,类的变量
            System.out.println(pt4.z);// 48句赋予了z新的值
    
        }
    }
  • 相关阅读:
    iOS 给Main.storyboard 添加button 事件《转》
    vs2015
    1520-win10
    [置顶] Flex中Tree组件无刷新删除节点
    数据结构(10)之查找
    oracle 在表中有数据的情况下修改表字段类型或缩小长度
    UVa123
    1000万条数据导入mysql
    Linux协议栈代码阅读笔记(二)网络接口的配置
    jquery.validate.js 应用示例
  • 原文地址:https://www.cnblogs.com/hnrainll/p/2683998.html
Copyright © 2011-2022 走看看