java 静态方法 构造方法,Java构造函数和静态方法
When should I use a constructor and when should I use static method?
Can you explain above with small snippet? I skimmed through a few threads but I'm still not clear with this.
解决方案
Use a public constructor when you only ever want to return a new object that type and you want simplicity.
A good example is StringBuilder as it's mutable and you are likely to want a new object each time.
public String toString() {
StringBuilder sb = new StringBuilder();
// append fields to the sb
return sb.toString();
}
Use a static factor method when you might want to re-use objects (esp if immutable), you might want to return a sub-class or you want descriptice construction. A good example is EnumSet which has a number of static factories which do different things even though some have the same arguments.
EnumSet.noneOf(RetentionPolicy.class);
// has the same arguments, but is not the same as
EnumSet.allOf(RetentionPolicy.class);
In this case, using a static factory makes it clear what the difference between these two ways of construction the set.
Also EnumSet can return two different implementations, one optimised for enums with a small number of values (<= 64) RegularEnumSet and another for many values called JumboEnumSet
java 静态方法 构造方法,Java构造函数和静态方法相关推荐
- 第32节:Java中-构造函数,静态方法,继承,封装,多态,包
构造函数实例 class Cat{// 设置私有的属性 name private String name;// 设置name的方法public void setName(String Name) {t ...
- 为什么静态方法在Java中不能是抽象的
本文翻译自:Why can't static methods be abstract in Java The question is in Java why can't I define an abs ...
- java heap space 解决方法_Java静态方法/变量,非静态方法/变量的区别,今天一并帮你解决
静态/非静态 方法/变量的写法 大家应该都明白静态方法/字段比普通方法/字段的写法要多一个static关键字,简单写下他们的写法吧,了解的可以直接略过 class Test{ // 静态变量 publ ...
- java 静态方法 实例方法的区别_java 静态方法和实例方法的区别
静态方法和实例方法的区别主要体现在两个方面: 在外部调用静态方法时,可以使用"类名.方法名"的方式,也可以使用"对象名.方法名"的方式.而实例方法只有后面这种方 ...
- java 静态方法_80后程序员,教你学Java核心技术:用户自定义类+静态域静态方法
用户自定义类 在第3章中,已经开始编写了一些简单的类.但是,那些类都只有一个简单的main方法.现在让我们开始学习如何设计复杂应用程序所需要的各种"主力类"(workhorse c ...
- java静态方法的调用方法_Java静态方法和实例方法
一:静态方法 其实在我们第一天学习java的时候就使用了静态方法,主方法的就是一个静态方法,静态方法和静态属性一样使用static修饰. DEMO:定义静态方法 发现了可以使用"类名.方法名 ...
- java 静态变量方法,java中的静态变量和静态方法
java中的静态变量和静态方法 发布时间:2020-06-25 20:15:28 来源:亿速云 阅读:100 作者:Leah 今天就跟大家聊聊有关java中的静态变量和静态方法,可能很多人都不太了解, ...
- Java中的静态变量、静态方法问题
由关键字static所定义的变量与方法,分别称为静态变量和静态方法,它们又都被称为静态成员 1.静态方法 无需本类的对象也可以调用此方法,调用形式为"类名.方法名",静态方法常常为 ...
- java静态类和非静态类_java静态方法和非静态方法的区别
一.相同点: 静态类和非静态类在C#中定义基本是一样的,只是静态类定义需要加上static修饰符而已. 二.生命周期: 静态方法(Static Method)与静态成员变量一样,属于类本身,在类装载的 ...
最新文章
- 从paxos到raft zab,为何raft能够“独领风骚”
- python 学习笔记8 (模块)
- 启动azkaban报错_解决启动Azkaban报错问题:java.lang.NoSuchMethodError: com.google.comm
- php cdi_Swing应用程序中的CDI事件将UI和事件处理分离
- oracle 索引invisible,Oracle index unusable和invisible的区别
- as3调用外部swf里的类的方法
- PyQt5 QTableView 全部item居中
- CNN进行新闻文本分类代码实战,包含分类文本
- 什么是大平层?大平层比别墅好吗?
- 面向对象——意图与逻辑(三)
- 程序员买房,买车,一个避不开的梗
- 征信报告 加密文档_Secret Folder for Mac(文件加密隐藏软件)
- 怎么保存html上的图片,一分钟教你如何保存网页上一些不能直接保存的图片
- 【量化分析】债券投资分析
- 在react脚手架中使用Tailwind CSS (入门)
- 三星android 8.0 流畅,三星Galaxy S8使用安卓Android 8.0:更顺滑更流畅
- 在我的电脑里计算机管理在哪里,电脑控制面板在哪里查找步骤 一起了解下吧...
- jquery实现星星闪烁功能
- 简易数字示波器,DDS信号源的设计方案
- 7.PostgreSQL操作语句
热门文章
- java url 缩略图_java根据url生成网页截图,缩略图 | 学步园
- 三类测量血压原理 - 智能手环测血压原理详解
- php mysql刷新表格_PHP和AJAMYSQL数据库刷新表格
- 大班线描机器人_大班美术教案机器人
- python删除列表第几个元素_python中对列表list遍历的过程中删除元素4种方法
- 为什么老是把词语读反_关于语言表达 6岁儿童经常把词语顺序念反
- OpenShift 4 - 配置OpenShift可使用的外部Image Registry和Mirror Registry
- Elasticseach 从零开始学习记录(二) - Head插件
- 在Blazor中构建数据库应用程序——第3部分——UI中的CRUD编辑和查看操作
- Blazor Hydra——在单个站点上托管多个Blazor SPA