【java】static的应用场景
定义静态原则:
什么时候定义静态变量:
对象中出现共享数据时,该数据被static所修饰。如国家
什么时候定义静态方法:
当功能内部没有访问到非静态数据时,该方法可以定义成静态的
工具类的例子:
/**
这是一个可以对两个int型进行加和减的方法集合
@author 张三
@version V1.0
*/
public class Tools
{
/**
构造函数
*/
private Tools()//为了强制让其他程序进行类调用,不建立对象,可以让构造函数私有化。
{
}
/**
对两个数字进行加法运算。
@param x 接受一个int型数字
@param y 接受一个int型数字
@return 返回一个int数字
*/
public static int add(int x,int y)
{
return x+y;
} /**
对两个数字进行减法运算。
@param x 接受一个int型数字
@param y 接受一个int型数字
@return 返回一个int数字
*/
public static int minus(int x,int y)
{
return x-y;
}
}
我们把共性的方法进行抽取封装,作为工具类Tools,工具类一般用static修饰,直接用类调用。这样可以节省内存空间。但是其他程序仍可以建立对象,为了强制让其他程序进行类调用,不建立对象,可以让构造函数私有化。封装的工具类若和调用程序不再一个目录会报错,需要我们set classpath。如set classpath=.;D:\mycalss(一定要加上“.”)。
生成接口文档:
javadoc会对/***/自动生成接口文档,详细的后续在介绍。注意一点是,当生成文档时,工具类Tools一定要用public修饰,否则会报错,如下图所示:
JDK API文档:http://tool.oschina.net/apidocs/apidoc?api=jdk-zh
【java】static的应用场景的更多相关文章
- Java static 的一两点使用
这篇文章是关于Java static关键字的使用,主要会介绍以下的内容: static 的概念 static的各种应用 总结 static 是什么 static 顾名思义是静态的意思.与this相对, ...
- java static 变量,和方法从属于类
第36集 java static 变量,和方法从属于类 可以用类来直接调用static属性和方法 static方法不能调用非静态的属性和方法,反之可以 new产生的对象,不包括static 属性和方法
- [转]java static final 初始化
http://tanbing1986411.blog.163.com/blog/static/7259798220103610224434/ java static final 初始化 1.stati ...
- Java static修饰符
Java static修饰符 static修饰符是静态修饰符,大家写Java第一次接触static就是主函数中的pubic static void main的声明了. 那么static有什么用?本文来 ...
- Java基础(六) static五大应用场景
static和final是两个我们必须掌握的关键字.不同于其他关键字,他们都有多种用法,而且在一定环境下使用,可以提高程序的运行性能,优化程序的结构.上一个章节我们讲了final关键字的原理及用法,本 ...
- java中final与static的使用场景
final Java关键词final有“无法改变”的含义,主要用于修饰非抽象类.方法或者变量.使用时注意: final类不能被继承,没有子类,final类中的方法默认是final的. final方法不 ...
- ***JAVA多线程的应用场景和应用目的举例
多线程使用的主要目的在于: 1.吞吐量:你做WEB,容器帮你做了多线程,但是他只能帮你做请求层面的.简单的说,可能就是一个请求一个线程.或多个请求一个线程.如果是单线程,那同时只能处理一个用户的请求. ...
- java Static的使用
static是一个静态修饰符,用于修饰成员(成员变量,成员函数).<thinking in java>对staic的使用场景有下面2种定义:“一种情形是只想用一个存储区域来保存一个特定的数 ...
- java模式及其应用场景
最经典的java 23种设计模式及具体例子(转发) 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容 ...
随机推荐
- windows 多用户登陆设置
在 “运行”中输入gpedit.msc打开“本地组策略编辑器” | 计算机配置 | 管理模板 | windows 组件 | 远程桌面服务 | 远程桌面会话主机 | 连接 | 限制连接的数量 | 编辑 ...
- 《Practical Vim》第八章:利用动作命令在文档中移动
面向单词的移动 定义: Vim 提供了面向单词的动作命令,用于将光标正向/反向移动一个单词; 功能 命令 正向移动到下一单词开头 w 反向移动到上一单词的开头 b 正向移动到下一单词(当前单词)的结尾 ...
- 553. Optimal Division
题目: Given a list of positive integers, the adjacent integers will perform the float division. For ex ...
- Golang 容器和不同header的解析
记录一下,用golang实现一个静态资源容器,膜拜下强人 http.Handle("/", http.FileServer(http.Dir(currentPath+"/ ...
- AutoMapper实现对象转换的几种方式
namespace ConsoleApplication1 { class Program { static void Main(string[] args) { //1.普通转换 Name name ...
- vs2013打包安装程序
安装扩展包Visual Studio Installer VS2013下默认是没有Visual Studio Installer的,需要安装对应的扩展包: 下载地址:VS2013安装向导扩展包下载 安 ...
- 关于 java 里面的路径
getClass().getResource("/").getPath() 获取当前类编译的文件的 目录 如果该文件已经是jar包中的文件 只能读取到该jar 包的 路径 g ...
- 超哥教你发布CRM
发布CRM你将使用以下软件 nginx uWSGI CentOS7 CRM项目文件 virtualenv supervisor WSGI.uWSGI python web服务器开发使用WSGI协议(W ...
- swift3笔记
备注:这里只是个人的观点,有的地方也是copy,多多指教,个人笔记,有侵犯你们版权的地方还望海涵!!! 个人觉得swift和OC最大的区别就是增加了许多现代化的东西,java里面的闭包,private ...
- C#中字符串大小比较函数--CompareTo与Compare方法(需要完善补充)
字符串比较的原理是什么? 原理: 从两个字符串的第一个字符开始逐个进行比较(按字符的ASCII值进行大小比较),直到出现不同的字符或遇到‘\0’为止. 如果全部字符都相同,就认为两字符串相等,返回0: ...