skpsk自己家 发表于 2019-6-18 22:44
百度 你得带""
不然他给你各种拆
问东答西
百度就是百度站内搜索嘛,一艘一堆百家号
秃头时间到!
我们来点 [干货]
过了冗长而又很多废话的准备环节
终于开始要敲代码了
说在前面:
[Part1] HelloWorld
打开我们的Eclipse 她亲切的看着你 的脸?先生你只剩脖子...?
我们也通过脱离的头颅发出的电磁信号 感受到了eclipse的气息

那么 在左上方 像关闭网页一样关掉这个welcome[欢迎]界面。
[其实关不关无所谓。有没有welcome也无所谓]
我们开始写我们自己的第一个程序。
先从简单的程序开始 再学习几个简单实用语法[实则根本记不住]
然后再了解插件。
面对界面 咱搞点事情。
点击万恶之源的 file[文件]-New[创建新的xxx]-xxx[选择创建xxx]

正常教程应当 让你们点击Javaproject。
但
你看我像是正常人吗
右边这一堆是什么?
这是我第一次接触eclipse 到前两天[现在时间2019年6月18日23:10:05] 才明白的东西
下面这些你不用急着理解。尤其是类。
这些东西一般教程在前面不会讲 但是就是因为没讲 我对这些东西一头雾水 非要弄个明白不然往下学不下去
我这里讲一讲 不看 看不懂 也没关系。而且我讲的也可能有错 只是目前的理解 大致方向约莫是没问题的
继续不走寻常路 我们接着讲一个eclipse使用中会遇到的一个问题
一顿乱点 左边的东西没了怎么搞?
[左边那个叫Package Explorer 是一种树状浏览器 你不用了解这是啥。我就这么一说]
就像这样

遇到这种问题 你可以双击下图 红色方块部分
只要放大看 这一部分和下面的纯白色还是有很大的颜色差距的
双击它即可缩小我们右边的文本编辑器[这就是敲代码的地方 只是现在什么都没有] 显示左边的package explorer

如果没有显示package explorer 而显示了下面的控制台等等的话
点击左边的很小的一个“放大化”图标 就可以了

其实package explorer 文本编辑器 还有下面的problems console什么的 都是放在窗口里
这种窗口类似于我们的Windows程序的窗口 但是必须要放在 eclipse这个大窗口里
这种窗口也可以最大化 最小化。
接着正常教程的思维 我们应该来写一个HelloWorld小例子.
没写过HelloWorld的小可爱们看这里:
写过的老咸鱼来看:
恭喜某些人从小可爱变成老咸鱼
老咸鱼看不懂也可以死不了脸冒充萌新看上面的
下面 超级高能!务必理解 但不可以急于求成 慢慢看 不懂就问 我下面会写别的代码 让萌新们理解每一句的含义
首先放原本的代码

然后是注释
下文我会提到类的属性 前文也提到过 是第一种类 然而细讲是不可能的
你想让我讲我也不会啊
我们现在基本用第二种类就可以了。
- <blockquote style="text-align: left;">package HelloWorld;
[2019年6月19日01:36:03] 未完待更。我好困 但是已经发一波假干货了哦。[划]
[2019年6月19日09:02:35] 昨晚我又出现了不能进入论坛的问题 我在回复贴发表试试
1139365029 发表于 2019-6-18 16:52
推荐用vi编辑器,比eclipse好用 #确信
vi操作不适合新手,太坑爹了……
支持楼主,亲民的教导方法
楼主再坚持会,保证加精的
给大佬递咖啡
123123jjj 发表于 2019-6-19 09:49
支持楼主,亲民的教导方法
谢谢支持!
123123jjj 发表于 2019-6-19 09:50
楼主再坚持会,保证加精的
啊第一次发好长的帖子 就是论坛不太友好 不然我也不想发在简书的
然后其实也不是教导 只是结合我自己学习的体会和感受 理解其他学习的人
然后从这个角度入手来共享我的知识
其实教学相长嘛 我自己也是刚学 教会别人 我自己肯定也更熟练了
八级dalao 这是嘲讽嘛 qwq
感谢大佬分享
秋灯Lantern 发表于 2019-6-18 19:44
等一等噢 可以先收藏 今晚再继续肝一波 码字
好,我等养肥了再来支持大佬。
东风4B-9319 发表于 2019-6-19 11:01
好,我等养肥了再来支持大佬。
噗嗤 明明你等级比我高鸭
秋灯Lantern 发表于 2019-6-19 11:04
噗嗤 明明你等级比我高鸭
MCBBS等级和水平关系不是很大,真的/喝茶
简书已经更新! 地址见二楼 浏览应该比MCBBS更方便舒适 哎还是MCBBS对我不友好 不然不至于这样了
秋灯Lantern 发表于 2019-6-18 22:19
好啦 和我一起学 会变好的 我已经有点眉目了 还没写到帖子里
暑假的吧,现在还没有时间(高中党很辛苦)?(T?T)?
这两天在忙搭建个人站 我是不愿意把东西放在简书上的
[主要是因为简书的编辑器没有BBS的功能多!!] [即使它界面好看还很丝滑]
我可能开另一个个人站的笔记坑
[主要是因为简书的编辑器没有BBS的功能多!!] [即使它界面好看还很丝滑]
我可能开另一个个人站的笔记坑
LZ回来续更了 这几天在暑假工 没空 今晚偷闲回来更新一次 然后个人站的那个帖子 因为索要评分 这个理由 被关闭了。。我再舔一舔版主试试
本帖最后由 秋灯Lantern 于 2019-6-25 07:48 编辑
如果你给他一个小数点后三位的数字 就会自动四舍五入
下面我们给出各个类型的默认值 也是看看就好
我会告诉你class的实质是一种数据类型吗
题前废话
补一张前面第三章的图 二楼也有 我怕有人电竞玩家看不到 毕竟新的更新
大家都会看的吧....的吧..
二楼估计没什么人看 都是碎碎念..
[吸取惨痛教训 这次我不用MCBBS图床了 用QQ空间的]
小葵花语法课堂开课啦 eclipse老报错怎么办?果断卸载。
快夸我 我终于会用删除线了!!
[还是我的比较好理解 我看都挺生涩]
[不一定按顺序讲 大致是这个方向]
=======[Java专讲1] 初步了解=======
First of all. 先把HelloWorld代码+注释看一遍。
下面要结合此图来学习
[Part1] Java关键字的概念
每一个编程语言都有自己的关键字
什么是关键字?
Java关键字 -
咱先来看看百科怎么说
Java关键字是电脑语言里事先定义的,有特别意义的标识符,有时又叫保留字,还有特别意义的变量。Java的关键字对Java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名和参数。
不理解?来看秋灯的话
对于关键字 我们根据他们的作用 有一套分类[参考教程分类]
我这里给出我们写插件/mod可能需要的 精研java的话还请具体看参考教程
[明明是自己不懂]
秋灯的话 | 教程的话 |
1.限制范围+声明 | 访问控制 |
2.修饰 | 类、方法和变量修饰符 |
3.流程控制 | 程序控制语句 |
4.包 | 包相关 |
5.基本类型 | 基本类型 |
6.变量的“代词” | 变量引用 |
补充
分类 | 举栗 |
1.限制范围+声明 | public private protected [一共就这三个] |
2.修饰 | static-静态 class-类 final-不可被修改的 |
3.流程控制 | for-遍历循环 if-如果 while-条件循环 break-跳出循环 |
4.包 | import-导入 package-包 [一共就这俩] |
5.基本类型 | boolean-是否值 int-整数值 double-双精度小数 |
6.变量的"代词" | this-代指本类 super-父类 |
对于以上关键字 我有空编辑这一页 补上一些代码例子 让你们更好的理解吧
好了 这里的分类大概晓得一下就行了
以后熟练了 就自己有自己的独到的理解了
=================================================
[Part2] Java基本类型
Java这个有强迫症的小朋友 对所有的数据都会精心分类
[js就不用]
那么分类的结果就是 产生了各种各样的数据类型
有的数据可能同时可以是 A类型 B类型 至于它具体是什么类型 看你如何规定
[这个有关内容 我后面在解释]
我们来了解java中的基本类型[完全摘抄]
好你可以关闭隐藏内容了 我知道你看不下去也看不懂
我也没真打算让你们看
实际上我要给你们讲的常用数据类型是这些:int char String boolean double
int - 整数型 最大可以为2,147,483,647 最小就是它的负数
当然如果你是什么变态mod作者觉得数值不够大 可以看看long
double - 小数型 可以精确到小数点后两位
修改 double后面可以存很多小数 具体是多少各类教程也是语焉不详。。
String - 字符串型 字符串 就是一串文字 当然也可以是一个文字 而String最大的字符数量...
网上说的五花八门我也看不懂 你用不完就是了
char - 字符 和前面的String不同 它只能存储一个字 比如 天、地、1、5、a、h
如果你规定一个数字是char型 它可以间接转换成int型。
boolearn - 布尔型 它只可以有两个值 true和false[真和假]
如果你遇到0/1的说法 0为假 1为真
以上 我们写mod插件常用数据类型。
1 这个数据到底是char 还是String 还是int 还是double、long?
下面我们给出各个类型的默认值 也是看看就好
后面要用到再说[我也不知道有没有用]
你不用管String后面的[or any Object] 是什么东西。还没学到

另外 以上只是基本类型[String不是 是我补充的常用的]
还有别的类型有兴趣自己了解 我也不是很明白
【2019年6月24日19:36:13】
这一层不知道怎么回事编辑的时候页面一抖一抖的
我换一楼
学过C#的一路看过来都没掉一根粉毛的>_
楼主加油,内容作为一篇教程很OK,详细而没给人压迫感.排版可以优化一下,有点乱了...
楼主加油,内容作为一篇教程很OK,详细而没给人压迫感.排版可以优化一下,有点乱了...
看到这个名字我就打算先收藏一下等什么时候记起来再看
Zapic 发表于 2019-6-24 00:37
学过C#的一路看过来都没掉一根粉毛的>_
好der 了解√
Maotong_qwq 发表于 2019-6-24 06:32
看到这个名字我就打算先收藏一下等什么时候记起来再看
谢谢收藏鸭~感谢支持
支持楼主感谢大佬分享
楼主推掉了暑假工 来给你们写帖子[分明是被人开了]
本帖最后由 秋灯Lantern 于 2019-6-30 23:32 编辑
编程方面 将常量其分类为 整型常量[整数] 实型常量[小数] 字符常量[字符]
复制代码
补充说明一下 由于没有换行和空格 所以在同一行输出了三遍HelloWorld。

java专讲1-----续
[Part3] Java变量与常量
我们来看百科的定义
“常量”的广义概念是:‘不变化的量’............[省略]常量可区分为不同的类型,如:25、0、-8为整型常量,6.8、-7.89为实型常量,‘a’、‘b’为字符常量。常量一般从其字面形式即可判断。这种常量称为字面常量或直接常量。
编程方面 将常量其分类为 整型常量[整数] 实型常量[小数] 字符常量[字符]
其实我觉得这个分类没什么用。了解一下就好
只需要知道 常量是不变化的量。
再看变量 [省略整个百科]
变量就是可以变化的量。
我我们可以对其进行多次修改
在java中 我们认为
数据被存储在内存中 不同的数据有不同数据类型
不同的类型有的不同的存储方式
[一个数据可能有多种存储方式任君选择]
而当我们想要使用这个数据的时候
机器会在内存中寻找这个数据 而不是我们给它数据它就直接用
所以我们就需要这两个概念----变量名 与 常量名
我们写程序的时候写出来的是变量名 实际上机器用的是这个数据
对于存储的数据 我们将其称作 变量值/常量值
我们需要将变量值与变量名绑定 这个操作叫做 赋值
我们修改变量值的方式也是赋值。 赋值符号就是等于号 [ = ]
那么我们要怎么进行赋值?
打开我们的eclipse [终于可以敲代码了]
我们先前创建了这样一个目录
如果你没有的话可以参照前面的内容重新创建[不看最好]

我们双击打开java文件 先前的代码全部删除
学了变量以后
我们可以用另一种方式来写HelloWorld
- package HelloWorld;
- public class HelloWorld {
-
- public static void main(String[] args){
-
- String a123 = "HelloWorld";
- final String b123 = "HelloWorld";
-
- System.out.println(a123);
- System.out.println(b123+" "+a123);
- }
- }
下面是分析
是我瞎了

看完了分析 尝试自己敲代码来使用变量?
一定要多敲代码。。。别忘了句号
留个小课题 如何是用变量输出
而且使输出结果为HelloWorld HelloWorld 而不是HelloWorldHelloWorld
[中间加一个空格]
下面是答案
先到这吧 [2019年6月24日20:59:42]
完了 越写 拓展越多 越感觉好多没讲
变量作用域 常量:转义字符 还有上面小课题为什么用+号
秋灯Lantern 发表于 2019-6-24 00:28
本帖最后由 秋灯Lantern 于 2019-6-24 19:36 编辑
题前废话
补一张前面第三章的图 二楼也有 我怕有人电竞 ...
我堂堂 double 怎么可能只存两位小数 = =
建议补一本 Java 技术参考用书
本帖最后由 秋灯Lantern 于 2019-6-25 07:53 编辑
多谢大佬指正!!
已修改。我也只是一个小白啦。。只是想和大家一起学习
只是单纯喜欢MC 想要初次尝试做一个mod/插件 我觉得是不必要看什么书的。。
当然如果想做一些 特别的 很棒的mod 还是需要对java有足够的理解 当然需要看书
难道有谁会指望只看教程的小白写出essentials IC2 这类在MC当中雷打不动mod/插件霸主地位的东西?
袋里的鲨 发表于 2019-6-24 23:49
我堂堂 double 怎么可能只存两位小数 = =
建议补一本 Java 技术参考用书
已修改。我也只是一个小白啦。。只是想和大家一起学习
只是单纯喜欢MC 想要初次尝试做一个mod/插件 我觉得是不必要看什么书的。。
当然如果想做一些 特别的 很棒的mod 还是需要对java有足够的理解 当然需要看书
难道有谁会指望只看教程的小白写出essentials IC2 这类在MC当中雷打不动mod/插件霸主地位的东西?
既然你都这么说了。。那我就水咯?????
给力 挺有意思的 学到了一些东西 

我也要学。。
这话半年前貌似说过了?

这话半年前貌似说过了?

LZ更新了!!!!!正在写帖子 预计一点左右发布 可能再来一发 也可能明天 [但你要知道秋灯是弧人精]

你说的这些太基础了,不如讲解一下JDBC,IO,多线程这些,我到有兴趣会看看,没想到你竟然连JDK这些最最基础的东西都讲
本帖最后由 秋灯Lantern 于 2019-7-1 01:13 编辑
可是还有人看不懂。
如果你只看这些 我不觉得会缺资源
另外我确实是小白 你说的我都不会2333我只是萌新的引路人 基础明白了才是根本 基础都不会 高阶教程再多也没用
C__C 发表于 2019-7-1 01:03
你说的这些太基础了,不如讲解一下JDBC,IO,多线程这些,我到有兴趣会看看,没想到你竟然连JDK这些最最基础的东 ...
可是还有人看不懂。
如果你只看这些 我不觉得会缺资源
另外我确实是小白 你说的我都不会2333我只是萌新的引路人 基础明白了才是根本 基础都不会 高阶教程再多也没用
,,拖一会儿 比我想的要多 举例也多 花了不少心思试图讲明白 讲简单 等等吧 其实才写没多少。。。。。
天亮之前搞定。
天亮之前搞定。
秋灯Lantern 发表于 2019-7-1 01:12
可是还有人看不懂。
如果你只看这些 我不觉得会缺资源
hhhhh,我这边以为你是老司机了,我说的这些百度确实很多,但是我真正需要的是JAVA三大高级框架深层原理,这东西百度出来的可不是很多,有的还不全,,所以基础东西也不需要,偶尔看看回忆回忆也是可以的,但是你发的太基础了,所以就说一下太基础了
java专讲1 再续
继承废话惯例 - 题前废话
[Part4] 补充知识
题后废话
这一part相对而言 如果你只是简简单单写个小插件 满足一下自我需要
那么相对而言没有那么重要[相对而言]
其实如果前面都理解了 这里也相对简单
如果你想踏踏实实学好java基础 以备以后认真学习java
那么基础知识还是必须要非常扎实。
我来补充一下上文没讲的 变量作用域 常量:转义字符 还有上面小课题为什么用+号 以及别的琐碎东西。
变量作用域 - 其实可以给他改个名字 叫 变量类型 比较好理解
毕竟变量的作用范围 就是 public private protected 前面讲过 和方法是一样的
来看下图变量的分类

我们来挨个解析
成员变量 - 成员变量被声明在 类之下、方法之外 它会被与类一同创建 与类共存 成员变量也叫属性
其中以static修饰的类变量 表示静态 类变量也叫 静态变量/静态属性 一般不轻易改变
不用static的实例变量 是 当类被实例化成一个对象 每个对象都不太一样的变量
static下面讲
举例代码也在static那里

比如我可以创建一个类 叫做 LOLheroes [即LOL英雄]
每个英雄都属于这个类 而每个英雄自己 又是单独个体[即对象]
我们需要创建一个新英雄的时候 就实例化这个类
产生一个新的对象[于是一个新的英雄诞生了]
他们都具有一定的属性 比如 血量 法力值 移动速度等等 这就是实例变量
而且每个英雄的属性各自不同 所以我们可以对每个英雄的属性进行更改
但是某些属性是一样的 比如他们可以携带的装备都是六个 这就是类变量/静态变量
它是
这个值我们一般不修改 所以说类变量通常是常量。

static我们知道可以修饰方法和变量
static我们前面说表示静态 那么静态的含义到底是什么?
这里给大家解惑
首先说方法 当A方法为静态 B方法非静态
此时在A方法中并不能调用B方法 但是在B方法中却可以调用A方法
除非B方法的所在类被实例化成一个对象 B才可以被调用
你可以将static修饰的 理解为“具体的” 因为静态变量不常被改变 基本是固定的
我们在类中声明实例变量时 因为每个对象的实例变量都不一样
所以 类中的实例变量 理解为"抽象的"而我们创建对象的过程是 类的实例化
实例化类的时候 也会将实例变量进行实例化 这个时候 对象的实例变量才是“具体的”了
我们使用static其实是省去了实例化的过程
这个时候我们才可以对其进行调用
变量也是同理 静态变量[或类变量] 可以在作用范围内直接被调用
所以说
static的作用是
方便在没有创建对象的情况下来进行调用(方法/变量)。
我这里举一个例子

图是网上盗来的 还挺合适
所以解析我写在下面就不写在图里了
第11行 - 声明了一个String类型的类变量str1 而private 表示该变量只可以在本java文件内被调用
第12行 - 声明了一个实例变量 基本同上。
第14-16行 - 没用。这是一个没什么用的构造方法。
第18-22行 - 这是一个 正常的、非static的方法print1() 它调用了 static的str1 和 非static的str2
第24-28行 - 这里创建了一个static的方法print2()
我们能看到 它调用非static的方法print1() 和 变量str2 都是不可以的
所以由第24-28行来看 没有static还挺麻烦
所以我再次强调
static的作用是
方便在没有创建对象的情况下来进行调用(方法/变量)。
来一波牢骚。
转义字符 - 转义字符的本质是一种常量 但是它具有特殊含义 [类似关键字但是并不是关键字]
下面是常用的转义字符
[复制粘贴的表格 你不用管Unicode那一列 懂得自然懂 不懂现在也不需要懂 我可能以后讲]
转义字符 | Unicode表示方式 | 功能解释 |
\b | \u0008 | 退格符 |
\n | \u000a | 换行符 |
\r | \u000d | 回车符(可以换行) |
\t | \u0009 | 空格符 |
\" | \u0022 | 双引号 |
\' | \u0027 | 单引号 |
\\ | \u005c | 反斜线 |
举个例子 转义字符虽然是常量 但是还是要在双引号内使用
我们可以对上文说的HelloWorld进行换行 而不只是空格

在java中 一些字符 被我们用双引号包围起来 我们就称其为 字符串 属于String类型的数据
而单个字符 被我们用单引号包围 我们称其为 字符 属于char类型的数据
[其中单引号双引号都是英式的 java中所有符号都是英式的 而非中式]
而加号 其实是 连接运算符 它可以将前后两个表示字符/字符串 的数据进行连接 成为整体的一个长字符串
C__C 发表于 2019-7-1 01:16
hhhhh,我这边以为你是老司机了,我说的这些百度确实很多,但是我真正需要的是JAVA三大高级框架深层原理, ...
那就 掏钱 买书 或者去找公司里上班的dalao
@Tollainmear 哇啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊 感谢dadiao dalao支持!
咳 不知不觉又是一周没更新
我这几天忙于csgo/codol 还有某PE工作室。。[尽管我不玩PE]
今天我被莫名其妙摊上了什么组织的副掌柜的..
我自己服务器找的那个OP还破事挺多。。要我自己来开服
我这两天有空更新下==
有兴趣加入我这个 和平共处 没有要求、自诩 孕育灵感与知识的地方 的组织
可以QQ搜索门牌号 139967641
我这几天忙于csgo/codol 还有某PE工作室。。[尽管我不玩PE]
今天我被莫名其妙摊上了什么组织的副掌柜的..
我自己服务器找的那个OP还破事挺多。。要我自己来开服
我这两天有空更新下==
有兴趣加入我这个 和平共处 没有要求、自诩 孕育灵感与知识的地方 的组织
可以QQ搜索门牌号 139967641
java学习太难了
我以前学了个一天不知道自己在学什么
我以前学了个一天不知道自己在学什么
青藤子. 发表于 2019-7-12 08:35
java学习太难了
我以前学了个一天不知道自己在学什么
不要挖坟了。。我不想更了
...
好像前几天有来看过来着0.0
我又忘了
好像前几天有来看过来着0.0
我又忘了
青藤子. 发表于 2019-7-12 22:26
我并不是挖坟,我只是想让你更新啊
天哪 人心险恶
想学但没时间
论坛似乎是不允许单纯的发Java教程的
我以前就这么干过 然后就死了。
我以前就这么干过 然后就死了。
这种东西真的适合丢茶馆吗?