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 連用,可以建構靜态常量。比如公司的 統一社會信用代碼之類,就是固有而無法改變的,比如随意搜尋一下京東:

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》 筆記:第一章 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) 構造器全局私有方法
喜歡的話,點個贊吧~!平時做題,以及筆記内容将更新到公衆号。
關注公衆号,互相學習:钰娘娘知識彙總