Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
编写高质量Java代码的7个建议
Search
uictechparty
July 08, 2012
Programming
2
190
编写高质量Java代码的7个建议
By Zelong Liang, 2nd TechParty@UIC
uictechparty
July 08, 2012
Tweet
Share
More Decks by uictechparty
See All by uictechparty
产品经理是做什么的呢?
uictechparty
1
220
找人
uictechparty
3
470
香港研究生申请经验分享
uictechparty
0
410
css.pdf
uictechparty
1
220
Introduction to Design Patterns
uictechparty
2
150
视觉障碍出行辅助仪 -The Third Eye
uictechparty
1
120
jQuery 快速入门
uictechparty
1
150
Introduction to NodeJS
uictechparty
1
210
Introduction to Hadoop
uictechparty
3
230
Other Decks in Programming
See All in Programming
perlをWebAssembly上で動かすと何が嬉しいの??? / Where does Perl-on-Wasm actually make sense?
mackee
0
130
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
140
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
130
[AtCoder Conference 2025] LLMを使った業務AHCの上⼿な解き⽅
terryu16
6
740
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
460
Claude Codeの「Compacting Conversation」を体感50%減! CLAUDE.md + 8 Skills で挑むコンテキスト管理術
kmurahama
1
640
Flutter On-device AI로 완성하는 오프라인 앱, 박제창 @DevFest INCHEON 2025
itsmedreamwalker
1
150
re:Invent 2025 のイケてるサービスを紹介する
maroon1st
0
150
Navigating Dependency Injection with Metro
l2hyunwoo
1
180
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
170
re:Invent 2025 トレンドからみる製品開発への AI Agent 活用
yoskoh
0
380
クラウドに依存しないS3を使った開発術
simesaba80
0
170
Featured
See All Featured
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
38
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
120
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
0
22
How GitHub (no longer) Works
holman
316
140k
Raft: Consensus for Rubyists
vanstee
141
7.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
680
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.4k
Claude Code のすすめ
schroneko
67
210k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
0
300
Rebuilding a faster, lazier Slack
samanthasiow
85
9.3k
Transcript
编写高质量 Java 代码的 7 个 建议
Who I am ? • @ 龙 mol_ 才不是小 眼睛
建议 1 :不要在变量和常量中出现 容易混淆的字母 • 包名,全小写 test • 类名,首字母全大写 Client
• 常量,全部大写并用下划线分隔 NUM_1 • 变量,采用驼峰命名方法 • KillDragon1
• l -> L • o/O( 增加注释 )
建议 2 :少用静态导入 • 从 Java5 开始引入了静态导入方法 ( import static
) • 减少字符输入量 • 提高代码可读性 • KillDragon2
建议 3 :提倡异常封装 • Java 异常处理机制确保程序健壮性 • 但不易看懂 • 开发人员
• 用户 • 异常封装
优点 • 1. 提高系统的友好性 • 2. 提高系统的可维护性 • KillDragon3
建议 4 :使用线程异常处理器提升 系统可靠性 • 数据交互时要监听指定端口,实现数据包 的接收和发送逻辑 • 避免线程阻塞 •
借口稳定性和可靠性问题 • KillDragon4
建议 5 :提升 Java 性能基本方 法 • 1. 不要再循环条件中计算 •
2. 尽量把变量、方法声明为 final static • 3. 频繁字符串操作使用 StringBulider 或 SreingBuffer • KillDragon5
建议 6 :让注释正确、清晰、简洁 • 1. 废话式注释 • 2. 故事式注释 •
3. 不必要的注释 • 4. 过时的注释 • 5. 大块注释的代码 • 1. 警示式注释 • 2.TODO 注释 • 注释是美化剂,不是催化剂,或为优秀加分,或为拙劣减 分
建议 7 :增强类的可替换性 • 多态,一个接口可以有多个实现方式,一 个父类可以有多个子类,并且可以把不同 的实现或子类赋给不同的借口和父类。 • 好处:替换性 •
1. 子类必须完全实现父类方法 • 2. 前置条件可以被放大 • KillDragon6
Q&A