JAVA漏洞在WEB领域的地位不必多言,每次在新的CVE出现的时候,前方神仙打架,自己却只能默默吃瓜,所以,认认真真的学习JAVA吧,同时也是为了后期更好的分析漏洞利用链。
笔者工作强度等时间关系,原定的入门系列取消,改为无序杂记系列,盯。。。。。。
话不多说,hello world走起~本教程选用IDEA作为IDE,JetBrains粉么得争议。

勾选基础模板,功能就是辅助创建了个初始package和一个带main()的demo类。

因为勾了模板这里多了项包名设置,和不勾手动创建效果完全一样。

demo中贴心的标识了在何处构造你的程序语句:
package com.rabbitmask.demo;
public class Main {
public static void main(String[] args) {
// write your code here
}
}
置换语句,执行即可从main方法开始执行;在Java中,每个类定义的public static void main(String[] args)是Java程序的固定入口方法,因此,Java程序总是从main方法开始执行:
System.out.println("Hello, world!");
#输出
Hello, world!
如果只有Java环境而不想使用IDE,也是可行的,手动javac
编译成字节码文件,在字节码文件目录java
运行即可,上述run
只不过是IDE在帮你做这两步:
javac -d . Main.java
java com.rabbitmask.demo.Main
#输出
Hello, world!
当然如果你不是像我一样在项目中做的操作,即无所属包名,即可参考网上最简单的那种格式输出:
javac Main.java
java Main
#输出
Hello, world!
此外,在Java中源码的缩进不是必须的,这点可区分与python,但标准的缩进是一个编程者优雅的习惯,IDE甚至提供了自动格式化代码的功能,在idea中快捷键如下:
Ctrl+Alt+L,将全部代码进行格式化
Ctrl+Alt+I,将选中的代码进行格式化
emmm,使用中可能会和QQ热键冲突,自行kill。

JAVA语言对字母大小写敏感,在JAVA中,源文件名必须和类名相同,此外类名首字母大写其实是一个开发习惯,而非语法规定。约定成俗的习惯是类名和源文件名首字母大写,变量名、方法名首字母小写,如果涉及多个单词均采用驼峰式命名习惯,再者项目名、包名需全部小写、常量名需全部大写。
其实这些习惯在面向对象的语言中是通用的,如大家熟悉的python。但也有人并不遵循这个习惯,如在下!QAQ,如果大家看我的python代码习惯,我会将主方法名与文件名对齐且首字母大写,因为我的代码复用习惯来自于封装调用而不是类的继承,换句话说,至少在python中我尽可能少的使用了类,但这并不违背面向对象的思想。如之前学习的golang,大家可要知道在golang中是没有类的概念的,但golang依旧具备面向对象的思想。当然,每个语言有每个语言的特点,在接下来的Java中,这个命名规范性肯定会更加严格一点,希望大家留意,当然如果你的代码希望只有自己看得懂或者同事的确打不过你,当我没说。
扯这么多就是希望大家不要盲目的去信仰什么规定,即使是蹩脚的俚语也不会玷污你信仰的虔诚。
即使是蹩脚的俚语也不会玷污你信仰的虔诚 —— 情书 2020.05.09
网友评论