【114天】尚学堂高琪JAVA300篇视频精华笔记(1-6)

【114天】尚学堂高琪JAVA300篇视频笔记(1-6)

第1集

  1. 学啥语言都行,大同小异。

  2. 踏实学,最快闭关四个月能找到工作。【这是我自个知乎上看的】

第2集:计算机语言发展史、java核心优势、java三大版本的区别

Java相关背景知识

  1. 计算机基于冯诺曼体系

  2. 计算机三代语言

    1. 机器语言

    2. 汇编语言

    3. 高级语言

      • 面向过程(C)

      • 面向对象(C++、JAVA、C#)

  3. C语言是现代语言鼻祖

  4. C++是在C语言基础上设计的面向对象语言

  5. Java可被称为C++-

  6. Object-C是IOS和Mac开发中的主流语言

  7. C#是微软山寨的JAVA,但由于与Windows绑定,失去了Java的跨平台优势。

Java的特性

  1. 简单性

  2. 面向对象

  3. 可移植性(跨平台性)【核心优势】

    >一次编写,随处运行,对不同平台兼容性的处理由JVM处理,我们只需要专注于Java源文件的开发。
  4. 高性能

  5. 分布式

  6. 动态性

  7. 多线程

  8. 安全性

  9. 健壮性

Java三大版本

  1. J2SE(JAVASE、Java 2 Standard Edition)

    
    >定位在个人计算机上的应用【Java基础】
  2. J2EE(JAVAEE、Java 2 Enterprise Edition)

    >定位在服务器端的应用【JavaWeb、安卓使用】
  3. J2ME(JAVAME、Java 2 Micro Edition)

    
    >定位在消费性电子产品的应用【使用较少】
    

第3集:JDK和JRE和JVM的区别、JDK的下载安装、环境变量配置、测试安装成功

JDK和JRE和JVM的区别

  1. JVM(Java Virtual Machine)

    1. JVM是一种规范,可以使用软件来实现,也可以使用硬件来实现,就是一个虚拟的用于执行bytecodes字节码的计算机。他也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。

    2. Oracle公司制定了JVM规范,方便开发者开发JVM。

    3. JVM是指在一台计算机上由软件或硬件模拟的计算机;它类似一个小巧而高效的CPU。

    4. byte-code代码是与平台无关的是虚拟机的机器指令。

    5. JAVA的跨平台实现的核心是不同平台使用不同的虚拟机,不同的操作系统有不同的虚拟机。Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。

    6. java字节代码运行的两种方式:

      • 方式interpreter(解释)

      • Just-in-time(即时编译):有代码生成器将字节代码转换成本机的机器代码,然后可以以较高速度执行。

    7. JVM负责将java字节码解释运行,边解释边运行,这样,速度就会受到一定的影响。JAVA提供了另一种解释运行的方法JIT(just in time),可以一次解释完,再运行特定平台上的机器码,高级的JIT可以只能分析热点代码,并将这些代码转成本地机器码,并将结果缓存起来,下次直接从内存中调用,这样就大大提高了执行JAVA代码的效率。这样就实现了跨平台、可移植的功能。    

  2. JRE(Java Runtime Environment)

    1. JRE包括:Java虚拟机(JVM)、库函数、运行Java应用程序和Applet所必须文件

    2. jre就是java运行时环境,包括了jvm和其它一些java核心api,任何一台电脑,只有安装了jre才可以运行java程序.  

    3. Java运行环境的三项主要功能:

      • 加载代码:由class loader 完成;

      • 校验代码:由bytecode verifier 完成;

      • 执行代码:由 runtime interpreter完成。

    4. 若只是运行JAVA程序,只需要JRE(通常非常小)

  3. JDK(Java Development Kit)

    1. sdk(也就是jdk)是jre的超集,是在jre的基础上增加了编译器及其他一些开发工具。

    2. 若要开发Java程序,就需要安装JDK。

  4. JAVA语言的应用范围

    1. 桌面应用编程

    2. WEB客户端编程

    3. WEB服务器编程

    4. 手机编程(J2ME或者现在的Android系统上开发应用程序)

    5. 机器人编程

JAVA开发环境的安装和配置详解(Windows)

  1. 下载JDK

  2. 安装JDK

  3. 环境变量配置

  4. 测试环境是否安装成功(cmd测试)

第4集:第一个程序HelloWorld、JAVA程序运行机制

public class HelloWorld {
    public static void main(String[] args) {
        System.out.print("Hello World!");
    }
}
  1. 环境变量的配置,是方便你打Java、Javac时直接执行文件

  2. 计算机的高级编程语言类型: 编译型 ,解释型.  Java 语言是两种类型的结合; 

    1. 第一步:编译
      利用编译器(javac)将源程序编译成字节码文件,字节码文件名:源文件名.class

    2. 第二步:运行
      利用虚拟机(解释器,java)解释执行class字节码文件。

第5集:Helloworld深化、文本编辑器的使用、常用dos命令、注释

Helloworld深化

  1. Java对大小写敏感。

  2. 关键字public被称作访问修饰符(access modifier),用于控制程序的其它部分对这段代码的访问级别。

  3. 关键字class 表明Java 程序中的全部内容都包含在类中,Java是一种纯面向对象的语言。

  4. 一个源文件中至多只能有一个public的类声明,其它类的个数不限,如果源文件中包含一个public 类,源文件名必须和它中定义的public的类名相同,且以“java”为扩展名。

  5. 一个源文件可以有多个class,正确编译后的源文件,会得到相应的字节码文件,编译器为每个类生成独立的字节码文件,且将字节码文件自动命名为类的名字且以“class”为扩展名。

  6. main方法是Java应用程序的入口方法,它有固定的书写格式。

  7. 在Java中,用花括号划分程序的各个部分,任何方法的代码都必须以“{”开始,以“}”结束, 由于编译器忽略空格,所以花括号风格不受限制。

  8. Java中每个语句必须以分号结束,回车不是语句的结束标志,所以一个语句可以跨多行。 

  9. 编程风格:

    1. 注意缩进!

    2. 成对编程!

常用Java开发工具

  1. 文本编辑器

    • UltraEdit

    • EditPlus

    • notepad++

    • sublime text3

  2. 集成开发环境(IDE:Integrated Development Environment)

CMD常用dos命令

  1. cd   进入一个目录

  2. cd ..

  3. dir

  4. 上下键:查找敲过的命令

  5. Tab键:自动补齐命令 

TERMINAL常用命令

  1. cd【.. ~ . /】

  2. ls

  3. pwd

  4. clear

  5. history

参考资料

两种注释

  1. 单行注释//、多行注释/**/

  2. 注释不出现在字节码文件中,编译器编译时将跳过注释。

public class Five {
    public static void main(String[] args){
        System.out.print("test");//我是单行注释
        System.out.println("test2");
        /*我 
         *是
         *多
         *行
         *注
         *释*/    
    }
}

第6集:标识符、unicode和GBK及各种字符集的关系

标识符

  1. 标识符:用于类、方法、变量的命名。

    1. 类名首字母大写(Man)

    2. 方法、变量首字母小写(myCode、eat())

    3. 标识符都使用驼峰命名法。

  2. Java标识符命名规则:

    1. 标识符必须以字母、下划线_ 、美元符$开头。

    2. 标识符其它部分可以是字母、下划线“_”、美元符“$”和数字的任意组合。

    3. Java 标识符大小写敏感,且长度无限制。

    4. 不可以是Java的关键字。

public class test006 {
    public static void main(String[] args){
        int $abc = 3;
        int _abc = 3;
        int abc = 3;
        int _ = 3;
        int $ = 3;
        int a = 3;
        //int 3abc = 3;//错误
        //int #abc = 3;//错误
        int 尚学堂 = 3;//可以,但不推荐
    }
}

unicode和GBK及各种字符集的关系

  1. JAVA不采用通常语言使用的ASCII字符集,而是采用Unicode这样的标准的国际字符集。因此,这里的字母的含义:英文、汉字等等。(不建议大家使用汉字来定义标识符!)

  2. 编码与解码时若不使用同一字符集,则会出现乱码。

  3. UTF-8,中文3个字节表示一个汉字、西欧英文1个字节表示一个字母,阿拉伯2个字节表示一个字符。

  4. 【我的拓展】常用中文字符用utf-8编码占用3个字节(大约2万多字),但超大字符集中的更大多数汉字要占4个字节(在Unicode编码体系中,U+20000开始有5万多汉字)。GBK、GB2312收编的汉字占2个字节,严格地用iso8859-1无法表示汉字,只能转为问号。参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值