一、常用的DOS命令

    1.打开cmd

        窗口键+r   -->  输入cmd  -->  确认

    2.常用的dos命令

        dir:列出当前目录下的所有文件及文件夹

        md:创建一个新的目录

        rd:删除目录

        cd:进入指定目录

        cd..:退回到上一级目录

        cd\:退回到根目录

        del:删除文件但不删除目录

        exit:退出DOS命令行

二、Java语言的运行机制

    Java语言的特点:

        1.面向对象

            两个基本概念:类、对象

            三大特性:封装、继承、多态

        2.健壮性 完善性

            强交互语言

           3.跨平台性

            jvm

        4.两种核心机制

            Java虚拟机(Java Virtal Machine)  JVM

            垃圾回收装置(Garbage Collection)  GC

三、Java语言的环境搭建

    1.下载安装JDK

        官方网址:https://www.oracle.com/technetwork/java/javase/downloads/index.html

        Oracle账号:2696671285@qq.com    password:Oracle123

    2.配置环境变量

        1.设置JAVA_HOME

            解压jdk的目录

        2.设置CLASSPATH

            .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

        3.在path中加入两个新的配置

            %JAVA_HOME%\bin

            %JAVA_HOME%\jre\bin

        

    3.验证是否安装成功

        打开cmd,使用java -version查看版本号

    

四、Hello World!

    1.将java代码编写到扩展名为.java的文件中

        

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

    2.通过DOS命令的javac命令对该文件进行编译(此处遇到错误1)

    

    3.通过Java命令对生成的class文件进行运行

    

五、注释

    单行注释  //

    多行注释  /**/

    文档注释  /***注释*/

小结

  1.在创建java文件时,文件名需与类名一致。

  2.public static void main为固定格式,main 是一个程序的入口,一个 java 程序运行必须而且有且仅有一个 main 方法。

问题:在用javac编译时遇到错误1,具体如图

  自己编写hello world时,出现错误1,使用网上的代码复制粘贴时则可以正常编译。之后删除原来的HelloWorld.java后,重新新建一个,并以ANSI编码格式保存,则没有出现此问题。

  通过其他博客得知,此问题的出现主要是因为在编写程序时使用了UTF-8编码格式,此格式会出现BOM头的问题(原本默认的txt编码格式应该是ANSI)。

  关于文件 BOM 头的问题

    当使用类似 WINDOWS 自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。但是java源代码中不可以由BOM,javac无法识别,会出现乱码。

  //BOM(byte-order mark),即字节顺序标记,它是插入到以UTF-8、UTF16或UTF-32编码Unicode文件开头的特殊标记,用来识别Unicode文件的编码类型。对于UTF-8来说,BOM并不是必须的,因为BOM用来标记多字节编码文件的编码类型和字节顺序(big-endian或little-endian)。在绝大多数编辑器中都看不到BOM字符,因为它们能理解Unicode,去掉了读取器看不到的题头信息。若要查看某个Unicode文件是否以BOM开头,可以使用十六进制编辑器。

  参考资料来源: https://blog.csdn.net/AITECH/article/details/79981091

         https://blog.csdn.net/a66731167/article/details/81286537

 

java学习day1的更多相关文章

  1. day1:java学习第一天之eclipse安装

    选择开发语言的学习其实不用纠结,如果你说自己是做开发的,连最流行的开发语言都不会,好像说不过去,并且最流行也说明用的人多,优秀的人也会,自己要提高要多向优秀的人学习.想明白这点其实选择就好说了,再一个 ...

  2. 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁

    什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...

  3. 0035 Java学习笔记-注解

    什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...

  4. 分享篇——我的Java学习路线

    虽然之前我是开发出身,但是我学习的语言是Objective-c,这个语言使用起来范围比较窄,对于自动化学习来说也是无用武之地,所以我自己学习了Java,对于一个有开发经验的人来说学习一门新语言相对来说 ...

  5. Java学习笔记(04)

    Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...

  6. Java学习心得之 HttpClient的GET和POST请求

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 HttpClient的GET和POST请求 1. 前言2. GET请求3 ...

  7. 0032 Java学习笔记-类加载机制-初步

    JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...

  8. 0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用

    垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...

  9. 0028 Java学习笔记-面向对象-Lambda表达式

    匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...

随机推荐

  1. C#与JAVA的互通

    C#与JAVA的互通 https://blog.csdn.net/sinat_35165183/article/details/68936910

  2. jeesite安装时Perhaps you are running on a JRE rather than a JDK

    使用自己本地安装的maven,启动jeesite报错: No compiler is provided in this environment. Perhaps you are running on ...

  3. linux文件夹目录含义及用途

    /boot,存放linux启动文件和内核: /initrd,boot loader initialized RAM disk,就是由boot loader初始化的内存盘.在linux内核启动前,boo ...

  4. bestcoder#9--1001--Lotus and Characters

    Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/131072 K (Java/Others) 问题描述 Lotus有nn种字母, ...

  5. vuex上手文章参考

    参考文章: vue-vuex上手

  6. MapReduce数据倾斜的解决方式

    数据倾斜:由于数据分布不均匀,造成数据大量的集中到一点,造成数据热点.map /reduce程序执行时,reduce节点大部分执行完毕,但是有一个或者几个reduce节点运行很慢,导致整个程序的处理时 ...

  7. java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or repr

    在数据库连接配置文件中加入以下: 解决办法为在application文件中添加serverTimezone=UTC spring.datasource.url=jdbc:mysql://localho ...

  8. 异步实时搜索jquery select插件

    异步实时搜索jquery select插件 一.先看看效果. 二.做此插件的原因. 1.数据量过大(几千.几万条),无法一次性全部加载. 2.现有插件各不相同,无法满足功能需求. 3.美观性,可控性不 ...

  9. python - assert 断言 语句

    使用assert断言是学习python一个非常好的习惯,python assert 断言句语格式及用法很简单. 用法:在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行时崩溃,不如在出现 ...

  10. JAVA中对null进行强制类型转换(null可以强转为任意对象,并执行对象的静态方法)

    今天很好奇,对null进行强转会不会抛错.做了如下测试得到的结果是, 如果把null强转给对象,是不会抛异常的,本身对象是可以为null的. 但是如果是基本类型,比如 int i = (Integer ...