当前位置 : 主页 > 编程语言 > java >

《Java 核心技术 卷1》 笔记 第四章:类与对象(4) 静态字段+静态方法+工厂方法

来源:互联网 收集:自由互联 发布时间:2022-07-13
4.4静态字段与静态方法 4.4.1 静态字段 静态是啥意思呢?就是大家公有的。 比如公司共用一个洗手间,这个洗手间,公司每个人都可以用,但是并不独立的属于一个人,这种时候就可以


4.4 静态字段与静态方法

4.4.1 静态字段

静态是啥意思呢?就是大家公有的。

比如公司共用一个洗手间,这个洗手间,公司每个人都可以用,但是并不独立的属于一个人,这种时候就可以考虑使用静态字段。

假设公司再建一个洗手间,那就所有人又多了一个可以选择的洗手间。

public class Employee {
private int id;
private static int toilent = 2;//公司共有2个洗手间
}

静态对象它属于类,不属于对象,加法逻辑:

public class Employee {
private int id;
private static int toilent = 2;//公司共有2个洗手间

public static void main(String[] args){
Employee.toilent++;
}
}

4.4.2 静态常量

把 static 和 final 连用,可以构建静态常量。比如公司的 统一社会信用代码之类,就是固有而无法改变的,比如随意搜索一下京东:

《Java 核心技术 卷1》 笔记 第四章:类与对象(4) 静态字段+静态方法+工厂方法_核心技术

4.4.3 静态方法

 通常,把常用的调参使用静态常量配置,或者把工具类的方法使用静态方法配置

public class Contants {
public static final String wxKey = "2hoi24h234i";//各种平台key
public static final String wxSecret = "1536474fdfg3";//各种平台secret

//集合转数组
public static int[] getArr(List<Integer> items){
return items.stream().mapToInt(o->o).toArray();
}
}

实际配置就是如上图(编码是杜撰的)。

1. 通常拿来做工具类,来配置公共常量,通常是对接各种短信平台、微信支付、支付宝支付、地图之类的固定参数。

2. 可以为不同构造器提供外部名称,防止因构造器太多不知道选用哪个。

 4.4.4 工厂方法

初始化时,通过静态方法而非自带构造。原因:

1. 静态方法有名字,构造器只能与类名相同,不能表达方法的含义

2. 只需要有限个数对象的公共类,比如 Calendar 类。

public class Main {
public static void main(String[] args){
// private static final int NUMBERSTYLE = 0;
// private static final int CURRENCYSTYLE = 1;
// private static final int PERCENTSTYLE = 2;
// private static final int SCIENTIFICSTYLE = 3;
// private static final int INTEGERSTYLE = 4;
NumberFormat numberFormatter = NumberFormat.getNumberInstance();//数值
NumberFormat currencyFormatter = NumberFormat.getCurrencyInstance();//金额符号+金额
NumberFormat percentFormatter = NumberFormat.getPercentInstance();//百分比
// NumberFormat scientificstypeFormatter = NumberFormat.getScientificInstance();//科学的,用不了
NumberFormat integerFormatter = NumberFormat.getIntegerInstance();//取整
double x = 0.1;
System.out.println(numberFormatter.format(x));
System.out.println(currencyFormatter.format(x));
System.out.println(percentFormatter.format(x));
System.out.println(integerFormatter.format(x));
}
}

4.4.5 main 方法

每个类都可以添加main方法,以执行 java x 的类方法进行执行。

《Java 核心技术 卷1》 笔记 第四章:类与对象(4) 静态字段+静态方法+工厂方法_java_02

   系列内容:

《Java 核心技术 卷1》 笔记:第一章 Java程序设计概述

《Java 核心技术 卷1》 笔记:第二章 Java程序设计环境

《Java 核心技术 卷1》 笔记:第三章 Java基本的程序设计结构(1)

《Java 核心技术 卷1》 笔记:第三章 Java基本的程序设计结构(2)

《Java 核心技术 卷1》 笔记:第三章 Java基本的程序设计结构(3)

《Java 核心技术 卷1》 笔记:第三章 Java基本的程序设计结构(4)

《Java 核心技术 卷1》 笔记:第三章 Java基本的程序设计结构(5)

《Java 核心技术 卷1》 笔记:第三章 Java基本的程序设计结构(6)

《Java 核心技术 卷1》 笔记:第三章 Java基本的程序设计结构(7)大数处理、数组、多维数组、控制台传参

《Java 核心技术 卷1》 笔记 第四章:类与对象

《Java 核心技术 卷1》 笔记 第四章:类与对象(2) GregorianCalendar 与 类的基本组成

《Java 核心技术 卷1》 笔记 第四章:类与对象(3) 构造器全局私有方法

喜欢的话,点个赞吧~!平时做题,以及笔记内容将更新到公众号。

关注公众号,互相学习:钰娘娘知识汇总

《Java 核心技术 卷1》 笔记 第四章:类与对象(4) 静态字段+静态方法+工厂方法_核心技术_03

网友评论