【Java自学】搬砖中年人代码自学之路Lesson 1


        都说「三十而立」,但是我的30岁却迎来了行业变革,想要在继续在这行工作,立是立不起来了,但是换个赛道又心有不甘,所以一直非常纠结

        翻来复去好多天,抽了好几盒烟,喝了几保温杯的浓茶,嗨,想这个干锤子!

        与其纠结烦恼,不如让自己从这种负面情绪里抽离出来,干脆学点自己本来感兴趣,但是一直没有接触过的东西好了

        在网上搜索了各种各样的也不知道对不对的文章之后,看的一知半解的我决定尝试学习Java,随着第一行代码的成功运行,虽然只是Hello,World!,但是好歹也算是进了编程的大门了,也来这里给自己记录一下,看看自己究竟能坚持多久,究竟能够多久成为一个能够「写出来点有用的、有内容的、能够让自己和别人能够初步认可的程序」

        学习途径是B站尚硅谷的入门课程,不得不说宋红康老师还是挺好玩儿的,经常讲些奇奇怪怪的冷笑话,内容讲的不难,也能够听懂

        使用的电脑是M1的MacBook Air,跟教程里的windows系统有很大差别,在最初配置Java的时候遇到很多问题,真的是视频配置1分钟,自己研究一下午,预计后续还会有更多的差异化问题,这也没办法,确实是没有在网上找到针对macOS的Java教程,如果各位好心人看到这篇帖子,还是希望能够推荐给我一下


一、Java基本知识

        1、Java基础:

                1、基础程序设计:关键字、数据类型、运算符、流程控制、数组「排序算法、数据结构」

                2、面向对象编程:类/对象、类的结构、三大特性、接口、设计模式

        2、Java高级:

                应用程序开发:JDBC、集合、IO/NIO、类库、多线程、异常处理、反射、网络

二、Java语言概述

        1、软件:一系列按照特性顺序组织的计算机数据和指令的集合,分为:系统软件(Windows、macOS等)和应用软件(凡是用到的都是应用软件)

        2、人机交互方式:图形化界面(GUI)、命令行(CLI)

                应用程序 = 算法(解决程序写完之后正确与否的问题) + 数据结构(解决程序写完之后效率的问题)——pascal之父

        3、常用的DOS命令:

                1、dir:列出当前目录下的文件以及文件夹,macos为ls

                2、md:创建目录

                3、rd:删除目录

                4、cd:进入指定目录

                5、cd..:返回上一级目录,macos不是这么用好像

                6、cd/:退回到根目录,macOS为cd ~

                7、del:删除文件

                8、exit:退出dos命令行

        4、计算机语言的发展迭代史

                1、第一代:机器语言,指令以二进制代码形式存在

                2、第二代:汇编语言

                3、第三代:高级语言

                        1、面向过程的语言:C、pascal、fortran等

                        2、面向对象的语言:Java、JS、Python、Scala等

        5、Java语言版本的迭代

                1、1991年,green项目,开发语言最初命名为oak

                2、1996年,发布JDK1.0,约8.3万个网页应用java技术制作

                3、2004年,发布里程碑版本,JDK1.5,更名为JDK5.0

                4、2005年,J2SE➡️JavaSE(桌面级应用)、J2EE➡️JavaEE(企业级应用)、J2ME➡️JavaME(移动端设备应用)

                5、2014年,发布JDK8.0,5.0后续的变化最大的版本

        6、Java语言的应用领域

                1、Java Web开发:后台开发

                2、大数据开发

                3、Android应用程序开发:客户端开发

        7、Java语言的特点:

                1、面向对象性:两个要素(类、对象)、三个特征(封装、继承、多态)

                2、健壮性:去除了C语言中的指针(其实Java中也有指针「引用」)、有了自动的垃圾回收机制(JVM涉及到)但是仍然会出现内存溢出或内存泄漏问题

                3、跨平台性:Java程序在任何系统都可以在针对不同系统的JVM上使用,write once,run anywhere「一次编译,到处运行」

        8、JDK、JRE、JVM三者的关系

                1、JDK = JRE + 开发工具集(例如Javac编译工具等)

                2、JRE = JVM + Java核心类库

        9、JDK下载和安装

                1、下载:官网,GitHub等

                2、安装:贼傻瓜,注意问题「路径不能有中文和空格」(安装包中含有jre文件,所以配置路径时候不需要单独配置jre环境)

        10、path环境变量的配置:path环境变量「操作系统执行命令时搜寻的路径

                1、为什么要配置path环境变量:希望Java的开发工具(javac、Java、Javadoc等)在任何的文件路径下都可以执行成功

                2、如何配置:macos跟windows区别很大,配置JAVA_HOME

                

三、开发体验——HelloWorld

        1、编写:

                1、创建一个txt文档,后缀改为.java,命名为HelloWorld.java

                2、输入代码:

class HelloWorld{
    public static void main(String[] args){
        System.out.println("Hello, World!");
    }
}

                3、编译:javac HelloWorld.java

                4、运行:java HelloWorld

        2、常见问题(bug)的解决

        3、总结写的第一个程序

四、注释:comment

        1、单行注释://

                1、作用1⃣️:对所写的程序进行解释说明,增强可读性,方便自己,方便别人

                2、作用2⃣️:调试所写的代码

        2、多行注释:/*……*/

        3、文档注释:/**……*/

                1、作用:注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件体现形式的该程序的说明文档

                2、注意:多行注释不可以嵌套使用

        4、特点:注释的内容不参与编译

五、API文档:

        1、API = application programming interface,习惯上将语言提供的类库都称为API

        2、API文档定义:针对于提供的类库如何使用的说明书,类似于新华字典,1.6的中文版翻译较好,内容与1.8差距不是很大

六、良好的编程风格:

         

七、开发工具使用:

         1、文本编辑工具:

                1、记事本

                2、UltraEdit

                3、EditPlus

                4、TextPad

                5、NotePad

        2、Java集成开发环境(IDE):

                1、JBuilder

                2、NetBeans

                3、Eclipse🌟

                4、MyEclipse

                5、IntelliJ IDEA🌟               

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值