[size=medium;]1.Android代码规范[/size]
[size=medium;]1.1Exception异常:[/size]
[size=medium;](1)不要忽略处理捕获到的任何异常,若非要忽略则应注明忽略的原因;[/size]
[size=medium;](2)要准备捕获各类异常,不能笼统使用exception通用异常;[/size]
[size=medium;]Error code void setServerPort(String value) { try { serverPort = Integer.parseInt(value); } catch (NumberFormatException e) { } } try { someComplicatedIOFunction(); // may throw IOException someComplicatedParsingFunction(); // may throw ParsingException someComplicatedSecurityFunction(); // may throw SecurityException // phew, made it all the way } catch (Exception e) { // I'll just catch all exceptions handleError(); // with one generic handler! }
[size=medium;]
[/size][/size]
[size=medium;]Right codes[/size]
void setServerPort(String value) throws NumberFormatException { serverPort = Integer.parseInt(value); } void setServerPort(String value) throws ConfigurationException { try { serverPort = Integer.parseInt(value); } catch (NumberFormatException e) { throw new ConfigurationException("Port " + value + " is not valid."); } } /** Set port. If value is not a valid number, 80 is substituted. */ void setServerPort(String value) { try { serverPort = Integer.parseInt(value); } catch (NumberFormatException e) { serverPort = 80; // default port for server } } /** Set port. If value is not a valid number, die. */ void setServerPort(String value) { try { serverPort = Integer.parseInt(value); } catch (NumberFormatException e) { throw new RuntimeException("port " + value " is invalid, ", e); } } /** If value is not a valid number, original port number is used. */ void setServerPort(String value) { try { serverPort = Integer.parseInt(value); } catch (NumberFormatException e) { // Method is documented to just ignore invalid user input. // serverPort will just be unchanged. } }
分享到:
相关推荐
android学习笔记-clip.pdf
Android学习笔记-SQLite介绍-以及使用Sqlite-进行数据库的创建-完成数据.pdf
【Android学习笔记--Binder】 Binder是Android系统中的核心组件,它是Android系统实现进程间通信(IPC,Inter-Process Communication)的主要方式。Binder机制允许不同进程的组件之间进行数据交换和功能调用,就像...
Android学习笔记-采用ListView实现数据列表显示-以及各种适配器使用-和如何写.pdf
这篇“Android学习笔记--Gson笔记”将深入探讨如何利用Gson来处理JSON数据,提升Android应用的数据解析效率。 一、Gson简介 Gson库能够将Java对象转换成对应的JSON字符串,反之亦然,这使得在Android应用中存储、...
本篇“Android学习笔记-- Notifying the User”将深入探讨如何有效地利用通知功能来提升用户体验。 首先,我们要理解Android的通知层次结构。在Android系统中,通知是通过`Notification`类来创建的。这个类包含各种...
在Android开发中,菜单是构建用户界面不可或缺的部分,它提供了多种操作选项,使得用户能够方便地与应用交互。本文将详细讲解Android中的三种菜单类型:Options Menu、Sub Menu和Context Menu,以及它们的使用和特性...
这篇学习笔记将引导新手入门,通过创建第一个简单的案例来了解Android Studio的基本操作。 首先,让我们了解一下Android Studio的核心功能。它基于IntelliJ IDEA,具备代码自动补全、重构、调试等强大的开发特性。...
### 黑马程序员之android学习笔记--用户界面 View(一) #### 一、View与ViewGroup概念解析 在深入探讨Android应用开发时,理解和掌握**View**与**ViewGroup**的概念至关重要。 - **View**: 在Android中,View是...
Android Clip剪切机制详解 Android 中的 Clip 剪切机制是指在 Canvas上对图形进行剪切的技术。Clip 剪切机制可以将图形分割成多个部分,实现图形的裁剪和遮罩效果。然而,在 Android 中 Clip 剪切机制与通常理解的...
Android 中的 Clip 机制详解 在 Android 开发中,Clip 是一个很重要的概念,它可以控制 Canvas 的绘制区域,限制绘制的图形在某个特定的区域内。然而,初次接触到 Android 的 Clip 很容易产生疑问,例如 Clip 的...
这篇学习笔记主要介绍了如何在Android应用中实现这一功能。以下是对笔记内容的详细解释: 首先,Android应用需要使用`Socket`类来建立与服务器之间的连接。在提供的代码片段中,可以看到在`onClick`方法中,创建了...
Android开发者学习笔记-View、Canvas、bitmap.pdf
这篇学习笔记将深入探讨Activity的相关知识,包括创建、声明、启动、关闭以及生命周期管理,同时还会涉及Task和Back Stack的管理。 一、Activity创建: 在Android应用中,Activity的创建通常始于一个Java类,这个类...
"Android学习笔记" Android学习笔记是Android开发者的必读书籍,书中涵盖了Android系统架构、Activity、Intent、资源管理等多方面的知识。本笔记对应的学习资源《第一行代码》是Android开发者的入门必读书籍,书中...
[RK3399][Android7.1] 学习笔记 --- Linux内核的设备树DTS详解
1. **Started Service**: 当一个组件(如Activity)调用`startService()`启动Service时,Service将独立运行,不受启动它的组件的影响。Service在此状态下会执行`onStartCommand()`方法,该方法返回一个Integer值,...
Android学习笔记(一)——创建第一个Android项目 Android学习笔记(二)android studio基本控件及布局(实现图片查看器) Android学习笔记(三)android studio中CheckBox自定义样式(更换复选框左侧的勾选图像) ...
ffmpeg学习笔记3 编译fdk-aac(Win10+android-ndk-r22)生成的arm64-v8a动、静态库 https://blog.csdn.net/aggs1990/article/details/124577004 CSDN审核可能较慢,如无法下载,可以过段时间再回来看下 仅供相关爱好者...
这是我的安卓学习笔记。 开始时间:2016-9-11 计划:一个半月 文章目录: 基础知识 1、Android01--搭建Android开发环境 2、Android02--认识Activity 3、Android03--Context和Application 4、Android04--Android服务 ...