Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何加强自己对Java的编码规范

如何加强自己对Java的编码规范

作者头像
小Bob来啦
发布于 2021-07-29 03:20:37
发布于 2021-07-29 03:20:37
6241
举报
大家好,我是小Bob,一个关注软件领域而又执着于计算机底层的开发者~

Java,无疑是现在计算机专业最容易找到工作的语言,使用的人也非常多,各大语言排行榜前三一般都会有Java。

那么,关于Java的使用小编这里先从它的编码规范开始,比如经常使用到的一些标识符以及关键字和注释。

一.标识符

首先,学Java要先弄清它的一些文件结构,这个我们下次会讲解。这里先说说它的标识符,简单来说,标识符是关于类、接口、方法、变量等起名字时使用的字符序列。

关于编程时使用标识符的一些规则

  • 字母、数字、下划线(_)、$所组成。
  • 不能使用数字开头。
  • 不能使用Java的关键字。
  • 区分大小写。

To:在使用变量时,由于utf-8支持中文,所以是可以使用中文变量的,但小编不建议使用,如果编码不同,实际上很容易出现问题。

上面说到字符序列有类、接口、方法、变量等,下面来逐一介绍:

(1)类、接口、命名规则:

单个单词、首字母大写、其余小写

举例:Hello

多个单词:每个单词的首字母都大写,其余单词小写

举例:HelloWorld

(2)变量、方法命名规则:

单个单词:字母全小写

举例:check()

多个单词:首字母小写、后面每个单词首字母大写

举例:checkUserName()

(3)常规命名规则:

单个单词:字母全部大写

举例:NUMBER

多个单词:字母全部大写、中间使用下划线隔开

举例:MAX_VALUE

To:切记定义变量时不能用数字开头。

二.源代码注释

关于注释,华为的标准是源程序中代码的注释量要达到30%以上,而且注释的内容要清晰明了,含义准确。间接的说明在敲代码时注释的重要性。

那么Java中注释有三种类别

  • 单行注释://
  • 多行注释:/* */
  • 文档注释:/** */(文档注释Javadoc生成的文档)

关于文档注释,便是通过命令来对源代码进行一定的信息补充,下次在使用Eclipse时将会讲到。

本质上来说,注释就是编译器在进行程序编译的时候,如果发现有注释的内容将不对此部分进行编译处理。Java中可以把注释分为三种:类注释、多行注释和单行注释。

三.相关规则总结

最后,关于程序的排版规则和命名规则:

排版规则:

1.程序块采用缩进规则,缩进的空格为四个,不允许使用TAP缩进。

2.分界符(如大括号{}各占一行)应各独占一行,同时与引用他们的语句左对齐。

3.较长的语句、表达式或参数(>=80字符)要分成多行书写。

4.不允许把多个短语句写在一行中,即一行只写一条语句,定义变量后应该空一行。

5.if for do while case switch default等语句各自占一行。

6.if for do while等语句的执行语句部分无论多少都要加括号。

命名规则:

1.类名和接口名使用意义完整的英文描述:每个英文单词的首字母使用大写,

其余字母使用小写的大小混合法。

2.方法名使用类意义完整的英文描述:第一个单词的字母使用小写,剩余单词首字母大写其余字母小写的混合法。

3.属性名使用完整意义的英文描述:第一个单词的字母使用小写,剩余单词首字母大写其余字母小写的大小写混合法。

4.常量名使用全大写的英文描述:语文单词之间使用下划线分隔开,并且使用static final修饰。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员Bob 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
最新的dgl中已经没有了model_zoo,在dgllife中可以找到model_zoo,并且没有GCNClassifier,只有GCN,且GCN定义节点缺失代码
最新的dgl中已经没有了model_zoo,在dgllife中可以找到model_zoo,并且没有GCNClassifier,只有GCN,且GCN定义节点缺失代码
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
DGL & RDKit | 基于Attentive FP可视化训练模型原子权重
DGL开发人员提供了用于可视化训练模型原子权重的代码。使用Attentive FP构建模型后,可以可视化给定分子的原子权重,意味着每个原子对目标值的贡献量。
DrugOne
2021/02/01
1.2K0
DGL & RDKit | 基于Attentive FP的分子性质线性模型
2019年8月13日JMC(Journal of Medicinal Chemistry)刊登了一篇文章“Pushing the Boundaries of Molecular Representation for Drug Discovery with the Graph Attention Mechanism”,介绍了一种基于注意力机制的图神经网络模型(Attentive FP)。该模型可以用于分子表征,在多个药物发现相关的数据集上的预测表现达到当前最优,并且该模型所学到的内容具有可解释性。
DrugOne
2021/02/01
2.4K0
基于Pytorch和RDKit建立QSAR模型
python qsar_pytorch.py solubility.train.sdf solubility.test.sdf
DrugOne
2021/01/28
1.5K0
DGL-LifeSci:面向化学和生物领域的 GNN 算法库
尝试使用新的DGL--LifeSci并建立Attentive FP模型并可视化其预测结果。
DrugOne
2021/02/01
3K0
DGL&RDKit|基于GCN与基于3D描述符的分子溶解度预测模型对比
图卷积神经网络(Graph Convolutional Networks, GCN )
DrugOne
2021/02/01
1.5K1
DGL | 基于深度学习框架DGL的分子图初探
纽约大学、纽约大学上海分校、AWS上海研究院以及AWS MXNet Science Team共同开源了一个面向图神经网络及图机器学习的全新框架,命名为Deep Graph Library(DGL)。
DrugOne
2021/01/29
1.3K0
【小白学习PyTorch教程】十四、迁移学习:微调ResNet实现男人和女人图像分类
ResNet是 Residual Networks 的缩写,是一种经典的神经网络,用作许多计算机视觉任务。
润森
2022/08/18
1.4K0
【小白学习PyTorch教程】十四、迁移学习:微调ResNet实现男人和女人图像分类
DGL | 基于JTNN可视化给定分子的邻居分子
JTNN :Junction Tree Variational Autoencoder for Molecular Graph Generation
DrugOne
2021/01/29
9910
使用pytorch构建图卷积网络预测化学分子性质
在本文中,我们将通过化学的视角探索图卷积网络,我们将尝试将网络的特征与自然科学中的传统模型进行比较,并思考为什么它的工作效果要比传统的方法好。
deephub
2024/01/04
4110
使用pytorch构建图卷积网络预测化学分子性质
图神经网络17-DGL实战:节点分类/回归
对于图神经网络来说,最常见和被广泛使用的任务之一就是节点分类。 图数据中的训练、验证和测试集中的每个节点都具有从一组预定义的类别中分配的一个类别,即正确的标注。 节点回归任务也类似,训练、验证和测试集中的每个节点都被标注了一个正确的数字。
致Great
2023/08/26
6960
RDKit | 基于化合物结构式图像估算分子式
当通过深度学习输入有机物质中结构式的二维图像时,需要解决寻找分子式的问题。这是一个回归问题,需要计算结构式图像中包含的碳、氢、氧和氮等原子数。
DrugOne
2021/01/29
1.9K0
GNN教程:DGL框架实现GCN算法!
本文为GNN教程的第七篇文章【使用DGL框架实现GCN算法】。图神经网络的计算模式大致相似,节点的Embedding需要汇聚其邻接节点Embedding以更新,从线性代数的角度来看,这就是邻接矩阵和特征矩阵相乘。然而邻接矩阵通常都会很大,因此另一种计算方法是将邻居的Embedding传递到当前节点上,再进行更新。很多图并行框架都采用详细传递的机制进行运算(比如Google的Pregel)。而图神经网络框架DGL也采用了这样的思路。
Datawhale
2021/01/05
2.6K0
图神经网络整理
图神经网络Graph neural networks(GNNs)是深度学习在图领域的基本方法,它既不属于CNN,也不属于RNN。CNN和RNN能做的事情,GNN都能做。CNN、RNN不能做的事情,GNN也能做。
算法之名
2022/05/06
7470
图神经网络整理
【Code】GraphSAGE 源码解析
本文代码源于 DGL 的 Example 的,感兴趣可以去 github 上面查看。
阿泽 Crz
2020/07/21
3.5K0
基于RDKit的Python脚本:SDF格式转SMILES格式
简化分子线性输入规范(SMILES)是一种用ASCII字符串明确描述分子结构的规范,由David Weininger和Arthur Weininger于20世纪80年代晚期开发,并由其他人,尤其是日光化学信息系统有限公司修改和扩展。
DrugOne
2021/01/28
2.9K0
【论文复现】ArcFace: Additive Angular Margin Loss for Deep Face Recognition
论文的标题:《ArcFace: Additive Angular Margin Loss for Deep Face Recognition》 论文下载链接:https://arxiv.org/pdf/1801.07698v1.pdf
致Great
2021/04/09
2.9K0
【论文复现】ArcFace: Additive Angular Margin Loss for Deep Face Recognition
【Code】关于 GCN,我有三种写法
本篇文章主要基于 DGL 框架用三种不同的方式来实现图卷积神经网络。手机看可能不太方便,可以点击阅读原文,移步到知乎上看(但是我忘了加 = =)。
阿泽 Crz
2020/07/21
2.3K0
【Code】关于 GCN,我有三种写法
基于RDKit的溶解度预测的机器学习模型
基于RDKit和Python3的化合物溶解度的机器学习模型小案例。 代码示例(仅供参考): # In[1]:导入依赖包 from rdkit import Chem, DataStructs from rdkit.Chem import AllChem from rdkit.ML.Descriptors import MoleculeDescriptors from rdkit.Chem import Descriptors from rdkit.Chem.EState import Fingerpri
DrugOne
2021/01/28
1.2K0
【猫狗数据集】使用top1和top5准确率衡量模型
链接:https://pan.baidu.com/s/1l1AnBgkAAEhh0vI5_loWKw 提取码:2xq4
西西嘛呦
2020/08/26
8430
【猫狗数据集】使用top1和top5准确率衡量模型
RDKit:化合物骨架分析
新药研发是一项耗时长且耗资巨大的工程,据资料显示由安全性问题与药物代谢动力学性质不良引起新化学实体成药失败的比例高达60%,且这一比例还在逐年升高。代谢稳定性是影响药代动力学性质的主要因素之一,它一般用来描述化合物代谢的速度和程度,也是决定药物小分子生物利用度的一个重要因素。骨架修饰是改变代谢途径、提高代谢稳定性的重要化学结构改造策略之一,通过骨架修饰进行先导化合物优化,能够显著提高先导化合物的代谢稳定性。
DrugOne
2021/02/01
1.8K0
推荐阅读
相关推荐
DGL & RDKit | 基于Attentive FP可视化训练模型原子权重
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档