漫漫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; |
| } |
| ``` |
| ### 软件或在线生成:以后补 |
| ## 标识符 |
| - 不用刻意去记,因为常用 |
| - 类名、变量名和方法名都被称为标识符 |
| - 标识符特点: |
| 标识符以由大小写字母、数字、下划线(_)和美元符号($)组成,但是不能以数字开头。 |
| 常用命名的规范: |
| 变量命名应该具有对应的意义,即见名知意、结合驼峰命名法使用。 |
| 包名:使用小写字母。 |
| 类名和接口名:所有单词的首字母大写。 |
| 方法名:第一个单词首字母小写,其他单词的首字母都大写。 |
| 变量名:成员变量和方法相同,局部变量全部使用小写。 |
| 常量名:全部使用大写,使用下划线分割单词。 |
| ## 注意:可以中文命名,但是强烈建议不要使用 |
漫漫Java路1—基础知识2—注释和命名规则的更多相关文章
- 漫漫Java路1—基础知识—初涉java
前言 主学信息安全,在编程的路上还是一个孩子,还在一步一步探索,有些东西可能是站在自己的位置思考的,很可能会出现一些啼笑皆非的错误,如果有误,还希望各位斧正. Java安装 jdk的安装 甲骨文官网选 ...
- 漫漫Java路1—基础知识3—数据类型和变量作用域以及常量
强类型语言 所有变量定义后才能使用,区别于js等弱类型语言 数据类型分类 基本类型(primitive type) 引用类型(reference type) 整数类 byte:占1字节 short:占 ...
- 第76节:Java中的基础知识
第76节:Java中的基础知识 设置环境,安装操作系统,安装备份,就是镜像,jdk配置环境,eclipse下载解压即可使用,下载tomcat 折佣动态代理解决网站的字符集编码问题 使用request. ...
- 【Java面试】基础知识篇
[Java面试]基础知识篇 Java基础知识总结,主要包括数据类型,string类,集合,线程,时间,正则,流,jdk5--8各个版本的新特性,等等.不足的地方,欢迎大家补充.源码分享见个人公告.Ja ...
- Java面试题-基础知识
参考文章:Java面试题-基础知识 基础能力 什么是值传递和引用传递 线程状态有哪些,它们之间是如何转换的 进程与线程的区别,进程间如何通讯,线程间如何通讯? HashMap的数据结构是什么?如何实现 ...
- JAVA核心技术I---JAVA基础知识(工具类Arrays和Collections类)
一:工具类 –不存储数据,而是在数据容器上,实现高效操作 • 排序 • 搜索 –Arrays类 –Collection类 二:Arrays类(处理数组) (一)基本方法 –排序:对数组排序, sort ...
- JAVA核心技术I---JAVA基础知识(static关键字)
一:static特殊关键字用处 –变量 –方法 –类 –匿名方法 二:静态变量:类共有成员 –static变量只依赖于类存在(通过类即可访问),不依赖于对象实例存在. –所有的对象实例,对于静态变量都 ...
- Java JDBC的基础知识(三)
在前面的Java JDBC的基础知识(二)和(三)中,主要介绍JDBC的原理和简单的应用过程.尤其在(二)中,可以发现代码进行多次try/catch,还有在前面创建连接等过程中好多参数我都给写定了. ...
- Java JDBC的基础知识(二)
在我的上一篇Java JDBC的基础知识(一)中,最后演示的代码在关闭资源的时候,仅仅用了try/catch语句,这里是有很大的隐患的.在程序创建连接之后,如果不进行关闭,会消耗更多的资源.创建连接之 ...
随机推荐
- JavaScript——匿名函数和闭包
匿名函数就是没有名字的函数 闭包就是一个函数中的另一个函数 函数可以不加分号,但是语句要加!! 可以把匿名函数的返回值赋值给变量!! box()时返回里面的函数,再加一个()就会返回里面那函数的值(浅 ...
- Educational Codeforces Round 94 (Rated for Div. 2) C. Binary String Reconstruction (构造)
题意:给你一个字符串\(s\),原字符串为\(w\),如果\(i>x\)且\(w_{i-x}=1\),那么\(s_{i}=1\),如果\(i+x\le n\)且\(w_{i+x}=1\),那么\ ...
- .net core mvc 获取Web根目录和内容根目录的物理路径
从ASP.NET Core RC2开始,可以通过注入 IHostingEnvironment 服务对象来取得Web根目录和内容根目录的物理路径,如下所示: using Microsoft.AspNet ...
- 并发编程之java内存模型(Java Memory Model ,JMM)
一.图例 0.两个概念 Heap(堆):运行时的数据区,由垃圾回收负责,运行时分配内存(所以慢),对象存放在堆上 如果两个线程,同时调用同一个变量,怎两个线程都拥有,该对象的私有拷贝 (可以看一下,T ...
- Please commit your changes or stash them before you merge问题解决
问题描述 error: Your local changes to the following files would be overwritten by merge: xxx/xxx/xxx.c P ...
- Petrozavodsk Summer Training Camp 2016H(多标记线段树)题解
题意: \(n\)个草,第\(0\)天种下,高度都为\(0\),每个草每天长高\(a_i\).现给出\(q\)询问,每次给出第\(b_i\)天,然后把高于\(d_i\)的全削成\(d_i\),每次问你 ...
- Java开发工程师最新面试题库系列——Java基础部分
JAVA基础 面向对象有哪些特征? 答:继承.封装.多态 JDK与JRE的区别是什么? 答:JDK是java开发时所需环境,它包含了Java开发时需要用到的API,JRE是Java的运行时环境,JDK ...
- u-boot 移植 --->2、在u-boot新增SOC和板子
本次主要是要新增一个samsung的芯片到u-boot中,网上查阅资料发现s5pc1xx是与手上的S5PV210的友善的Tiny版子寄存器兼容的比较多,所以就准备以他为基础增加一个我的板子的支持到u- ...
- Hadoop 3.0 EC技术
Hadoop 3.0 EC技术 EC的设计目标 Hadoop默认的3副本方案需要额外的200%的存储空间.和网络IO开销 而一些较低I/O的warn和cold数据,副本数据的访问是比较少的(hot数据 ...
- Tensorflow+InternalError: Blas GEMM launch failed
[参考1:]https://stackoverflow.com/questions/37337728/tensorflow-internalerror-blas-sgemm-launch-failed ...