B站400万播放量的Java教程都讲了什么-学习笔记01-Java简介

先说废话

最近自学Java的时候,在B站看到动力节点老杜老师的Java教程(原视频戳这里),个人感觉讲得非常细,对于小白来说非常友好,同时也会讲一些计算机基础和程序执行的基本原理,对于有一定编程基础的来说可以加深对语言的理解。目前,这套教程在B站获得将近400万的播放量,是Java教程的Top 1,看来群众的眼睛是雪亮的。
废话到此为止,这么好的教程当然要记笔记,但是我会稍微总结、合并和简化一下原教程。最后再感谢一下阿婆主和老杜,嗯,Java真香!

Java简介

Java作为一门使用度很高的语言,是由James goslin领导的团队在1995年之前为了占领智能电子市场而发明的语言,最初起名Oak语言(据说在办公室外有一颗橡树,因此有了Oak,大神就是这么free style),悲催的是,当他们去注册专利的时候,发现Oak已经被别的公司注册了。因此Oak只好另觅高名了,高斯林喜欢喝咖啡,据说咖啡豆产自印尼爪哇岛,因此Oak又有新的名字–Java。
Java有着不同的版本:

  • Java SE:标准版
  • Java EE:企业版
  • Java ME:微型版

Java语言特性

  • 简单:java源于C++,但是比其简单
  • 面向对象(object):纯面向对象,更符合人的思维
  • 跨平台、可移植:一次编译,到处使用
    java将程序运行到一台虚拟计算机(java virtual machine,JVM),通过虚拟机再和底层操作系统打交道,从而实现不同操作系统以及平台的通用。
  • 自动垃圾回收机制(GC)
  • 多线程

Java的加载与执行

Java的运行机制包括编译和运行两个阶段,java源码放在.java的文件中,编译的主要作用是检查源文件的是否符合java的语法,如果符合规范则生成字节码文件,以.class结尾 (字节码文件不是二进制文件,无法被计算机直接执行);运行过程java(.exe)负责运行class文件,使用java + 类名 运行。

  • 编译过程
    1.程序员在硬盘写入java源文件,保存为.java
    2.通过jdk java编译工具javac编译源文件,javac java源文件路径。一个java源文件可以生成多个.class。编译结束以后可以将class文件拷贝到其他操作系统使用。
  • 运行过程
    1.java程序启动JVM的类加载器(ClassLoader)
    2.类加载器搜索class文件,并将字节码文件载入JVM
    3.JVM将class解释成二进制的数据
    4.操作系统执行二进制和底层交互

Hello World

Java安装过程不表,这里演示在Mac上编写和执行第一个java源程序:Hello World。
通过vim写入Hello world的示例源码,保存为HelloWorld.java

//公开的类,类名叫HelloWorld
public class HelloWorld{
    /**
     * 创建一个公开的静态的主体 使用main方法,是程序执行的入口
     *String[] args是main方法的形式参数列表
     */
    //类体中不允许书写java语句,除了声明变量
    //args可以自己起名
    public static void main(String[] args){
        //java语句,打印hello world
        //字符串用双引号包裹,语句以分号结尾
        System.out.println("hello world");
    }//注意缩进和括号成对

}

使用javac编译:javac HelloWorld.java
使用java运行:java HelloWorld,注意没有后缀

classpath

ClassLoader每次都是如何加载.class类的?

  • 默认是搜索当前目录,也可以通过classpath在其他目录搜索。
    * 推荐设置classpath的方式是在运行java程序的时候,用-classpath,简写-cp,指定用:分割的路径,例如java -cp ./:"/usr/java class" HelloWorld,表示在当前目录和/usr/java class下搜索HelloWorld

注释

  • 单行注释
    // 单行注释
  • 多行注释
    /* 多行注释
    多行注释
    */
  • Java doc注释
    /** 多行注释
    *多行注释
    */
    doc注释会被javadoc解析

简单理解class和public class的区别

/**
 * class(私有类)和public class(公有类)的区别
 * (1)一个程序中可以有多个class
 * (2)一个程序中只能有一个public class并且类名要和源文件名一致,public class且不是必须的
 * (3)有几个类则会生成几个.class文件
 * (4)每个类中可以调用main方法,作为程序入口
 */
class A{
    public static void main(String[] args){
        System.out.println("A");
    }
}
class B{
    public static void main(String[] args){
        System.out.println("B");
    }
}
public class ClassPublicClass{
    public static void main(String[] args){
        System.out.println("public class");
    }
}
发布了23 篇原创文章 · 获赞 18 · 访问量 6560

猜你喜欢

转载自blog.csdn.net/qq_42491125/article/details/105429817