漫漫Java路1—基础知识2—注释和命名规则

## 注释
1. 单行注释
```java
//这是一个注释
```
2. 多行注释
```java
/*
这是一个注释
*/
```
3. 文档注释
```java
/**
*
*
*
*/
```
文档注释是有功能的,它允许你在程序中嵌入关于程序的信息。你可以使用 javadoc 工具软件来生成信息,并输出到HTML文件中。
表格取自菜鸟教程,侵权删
## 关于注释的彩蛋
### 直接复制
```java
/***
* ┌─┐ ┌─┐
* ┌──┘ ┴───────┘ ┴──┐
* │ │
* │ ─── │
* │ ─┬┘ └┬─ │
* │ │
* │ ─┴─ │
* │ │
* └───┐ ┌───┘
* │ │
* │ │
* │ │
* │ └──────────────┐
* │ │
* │ ├─┐
* │ ┌─┘
* │ │
* └─┐ ┐ ┌───────┬──┐ ┌──┘
* │ ─┤ ─┤ │ ─┤ ─┤
* └──┴──┘ └──┴──┘
* 神兽保佑
* 代码无BUG!
*/
```
### 手动生成
原理是用opencv读取图片,转成灰度图,只含有一个通道,然后把0-255对应到可打印字符上,然后一个像素一个像素处理。由于是单像素采集,所以最后生成的文字多少就取决你的图片像素,太大了的话做注释效果不太好,也可以每四个像素取一个平均值,生成一个字符,这样横竖就缩小了一倍,也可以根据自己的需求自行调整。黑白,清晰的图片效果更好。
```c++
#include <opencv/cv.h>
#include <opencv/highgui.h>
#include <string.h>
#include
#include
using namespace std;
using namespace cv;
char Book[] = " $@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/|()1{}[]?-_+~<>i!lI;:,"^`'.";
char Chang(int gray) {
if(gray>240) return ' ';
int unit = 255.0 / strlen(Book);
return Book[int(gray / unit)];
//return int(gray / unit)? '0':'1';
//return rand()%2? '$':'%';
}
int main()
{
char name[] = "timg.jpg";
char name2[] = "timg.txt";
IplImage *a = cvLoadImage(name,0);
ofstream Txtout(name2);
for (int i = 0; i < a->height; i++) {
for (int j = 0; j < a->width; j++) {
CvScalar s = cvGet2D(a, i, j);
Txtout << Chang(s.val[0]);
printf_s("%c",Chang(s.val[0]));
}
Txtout << endl;
cout << endl;
}
Txtout.close();
return 0;
}
```
### 软件或在线生成:以后补
## 标识符
- 不用刻意去记,因为常用
- 类名、变量名和方法名都被称为标识符
- 标识符特点:
标识符以由大小写字母、数字、下划线(_)和美元符号($)组成,但是不能以数字开头。
常用命名的规范:
变量命名应该具有对应的意义,即见名知意、结合驼峰命名法使用。
包名:使用小写字母。
类名和接口名:所有单词的首字母大写。
方法名:第一个单词首字母小写,其他单词的首字母都大写。
变量名:成员变量和方法相同,局部变量全部使用小写。
常量名:全部使用大写,使用下划线分割单词。
## 注意:可以中文命名,但是强烈建议不要使用
上一篇:sqlite升级--浅谈Android数据库版本升级及数据的迁移


下一篇:深入解析Sqlite的完美替代者,android数据库新王者——Realm