首页 存档 技术 查看内容

JavaSE 学习参考:类的静态成员和静态方法

2018-3-30 13:00 |来自: 互联网 284 0

摘要: 点击上方“蓝字”关注本公众号JavaSE 学习参考:类的静态成员和静态方法○ 程序在运行时可能需要一些全局数据,比如远程资源的URL,标识名称,游戏中关卡的总数,当前的关卡,游戏角色的数量,还有一些实用工具用于 ...

点击上方“蓝字”关注本公众号

JavaSE 学习参考:类的静态成员和静态方法

程序在运行时可能需要一些全局数据,比如远程资源的URL,标识名称,游戏中关卡的总数,当前的关卡,游戏角色的数量,还有一些实用工具用于格化转换,数据验证等。这些数据和功能属于全局概念,无需在运行时动态创建对象来维持这些数据和功能,而在程序在初始化应该为些数据分配空间和初始化。

Java使用static关键字在定义这全局数据和全局部功能的成员,称为静态属性和静态方法,由于Java程序最基本的单位是类,所以这些静态属性和静态方法也定义在类中,但需要注意是这类创建的对象和这些静态成员没有关系,对象并有维持这些成员数据。

既然作为全局成员因些访问也比较方便,访问静态属性直接通过类名.属性名,访问静态方法直接通过类名.静态方法,需要创建对象。当同类中其他成员方法(即非static方法,必须通过创建对象才能访问)和静态方法可以省略类名限定,但外部类访问必须加上类名限定。

静态方法内部除了可操作自身的定义局部变量外,只能访问外部的全局数据static属性。尽管它委身所在类中还定了其他成员变量,但不能访问。

import java.text.**DateFormat;

import java.util.Date;

class MyTool {

private String str;

publicstatic String PATTERN="yyyy-MM-dd";

publicstatic String format(Date date){

**DateFormat sdf=new **DateFormat(PATTERN);

returnsdf.format(date);

}

publicvoid setStr(String str) {

this.str = str;

}

public String getStr() {

returnstr;

}

publicvoid largeFistLetter(){

String s=str.toLowerCase();

charch=s.charAt(0);

str=ch str.substring(1,str.length());

}

}

publicclass Demo1 {

publicstaticvoid main(String[] args) {

MyTool mt=new MyTool();

mt.setStr("Hello");

System.out.println(mt.getStr());

Date now=new Date();

String str=MyTool.format(now);

System.out.println(str);

MyTool.PATTERN="yyyy/MM/dd";

str=MyTool.format(now);

System.out.println(str);

}

}

程序运行的结果如下:

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部