Maison >Java >javaDidacticiel >Normes de codage Java (points clés couramment utilisés)
Ce qui suit est la spécification de codage Java que j'ai compilée. Lors de l'écriture du code, vous devez suivre la spécification de codage pour faciliter la maintenance quotidienne.
Convention de dénomination
Convention de dénomination des classes
La première lettre de chaque mot de la classe doit être en majuscule, par exemple UserService. Mauvaise méthode de dénomination userService, userservice
Le scénario de test se termine par Test, par exemple UserServiceTest
If. il est abrégé par le terme Au début, les abréviations des termes doivent toutes être en majuscules, comme HTMLEditor. Mauvaise écriture...
Les noms de classe doivent utiliser des lettres ou des chiffres anglais, et aucun caractère spécial ne doit apparaître
.Les interfaces ne commencent pas par I
Convention de dénomination des méthodes
La première lettre du premier mot est minuscule et la première lettre d'autres mots est en majuscule
Vous devriez pouvoir le voir à partir du nom de la méthode La fonction de la méthode
Normes de codage
Indentation du code
L'indentation du code est un onglet (longueur de 4 espaces). Eclipse a par défaut une longueur de 4 espaces.
Portée
Les attributs de la classe doivent être définis sur privé, et les classes externes peuvent modifier les attributs privés en fournissant des méthodes get et set.
Si la méthode de la classe est uniquement destinée à un usage interne de la classe, elle doit être définie sur private ; si elle peut être utilisée par les sous-classes, elle doit être définie sur protected s'il s'agit d'une méthode publique ; il devrait être rendu public.
Spécifications d'annotation
Annotation des informations de droit d'auteur
Annotation des informations de droit d'auteur En début de fichier, permet de déclarer le copyright du code. Utilisez des commentaires comme /**/.
/* * Copyright © 2015 TIAMAES Inc. All rights reserved. */ package com.tiamaes.gjds.das.controller;
Le modèle de commentaire est le suivant, Fenêtre->Préférences->Java->Style de code->Commentaires->Fichiers
/* * Copyright © ${year} TIAMAES Inc. All rights reserved. */
Copyright © 2015 TIAMAES Inc. Tous droits réservés. La description est la suivante
Copyright 2015 Tianmai Technology Co., Ltd. Tous droits réservés.
- Inc. Une société par actions à responsabilité limitée constituée conformément au droit des sociétés
- Co. Ltd Société à responsabilité limitée
Spécifications d'annotation de classe
Le Les informations d'annotation de classe doivent être Contient des informations de description de classe, des informations sur l'auteur et des informations sur la version.
/** * 类描述 * @author 王成委 * @since 1.0 * @see xxx */ public class TypeName
Le modèle de commentaire est le suivant, Fenêtre->Préférences->Java->Style de code->Commentaires->Types
/** * ${todo} * @author 王成委 * @since 1.0 */
类描述:描述类的功能,单行直接写,如果多行需要使用e388a4556c0f65e1904146cc1a846bee94b3e26ee717c64999d7867364b1b4a3
@author:多个作者使用多个@author
@since:说明此类是从那个版本开始
@see:与类相关的其他类或方法
可参考org.springframework.stereotype.Controller的类注释信息。
/** * Indicates that an annotated class is a "Controller" (e.g. a web controller). * * <p>This annotation serves as a specialization of {@link Component @Component}, * allowing for implementation classes to be autodetected through classpath scanning. * It is typically used in combination with annotated handler methods based on the * {@link org.springframework.web.bind.annotation.RequestMapping} annotation. * * @author Arjen Poutsma * @author Juergen Hoeller * @since 2.5 * @see Component * @see org.springframework.web.bind.annotation.RequestMapping * @see org.springframework.context.annotation.ClassPathBeanDefinitionScanner */
方法注释
使用下面的模版
/** * ${todo} * ${tags} */
${tags}:自动生成参数、异常、返回值等注解
/** * TODO * @param request * @throws IOException */ @RequestMapping("/ctx")public void test(HttpServletRequest request) throws IOException
如果类中的方法实现了抽象方法或重写了父类的方法,应在方法上加上@Override注解。如果要覆盖父类方法的注释可以使用/** */注释来覆盖父类的注释。
org.springframework.core.io.Resource /** * Return a File handle for this resource. * @throws IOException if the resource cannot be resolved as absolute * file path, i.e. if the resource is not available in a file system */ File getFile() throws IOException;
在实现的方法上使用/**...*/可以覆盖父类方法的注释。
org.springframework.core.io.AbstractResource /** * This implementation throws a FileNotFoundException, assuming * that the resource cannot be resolved to an absolute file path. */ @Overridepublic File getFile() throws IOException { throw new FileNotFoundException(getDescription() + " cannot be resolved to absolute file path"); }
属性和变量及方法内代码的注释
使用//来对变量和属性注释,方法内的代码也使用//注释
如非必要变量和属性可以不加注释,如果代码内有负责逻辑应使用//注释加以说明
public ServletContextResource(ServletContext servletContext, String path) { // check ServletContext Assert.notNull(servletContext, "Cannot resolve ServletContextResource without ServletContext"); this.servletContext = servletContext; // check path Assert.notNull(path, "Path is required"); String pathToUse = StringUtils.cleanPath(path); if (!pathToUse.startsWith("/")) { pathToUse = "/" + pathToUse; } this.path = pathToUse; }
以上是我所整理的一部分JAVA编码规范,希望今后大家做开发时能够严格按照编码规则来开发,这样有便于日常维护。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!