java学习day1
一、常用的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的更多相关文章
- day1:java学习第一天之eclipse安装
选择开发语言的学习其实不用纠结,如果你说自己是做开发的,连最流行的开发语言都不会,好像说不过去,并且最流行也说明用的人多,优秀的人也会,自己要提高要多向优秀的人学习.想明白这点其实选择就好说了,再一个 ...
- 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁
什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...
- 0035 Java学习笔记-注解
什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...
- 分享篇——我的Java学习路线
虽然之前我是开发出身,但是我学习的语言是Objective-c,这个语言使用起来范围比较窄,对于自动化学习来说也是无用武之地,所以我自己学习了Java,对于一个有开发经验的人来说学习一门新语言相对来说 ...
- Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
- Java学习心得之 HttpClient的GET和POST请求
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 HttpClient的GET和POST请求 1. 前言2. GET请求3 ...
- 0032 Java学习笔记-类加载机制-初步
JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...
- 0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用
垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...
- 0028 Java学习笔记-面向对象-Lambda表达式
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...
随机推荐
- HTTP协议的请求方法
HTTP概念: HTTP是一个基于TCP/IP通信协议来传递数据,包括html文件.图像.结果等,即是一个客户端和服务器端请求和应答的标准 1.http无连接:限制每次连接只处理一个请求,服务端完成客 ...
- 【leetcode】1178. Number of Valid Words for Each Puzzle
题目如下: With respect to a given puzzle string, a word is valid if both the following conditions are sa ...
- TypeScript作为前端开发你必须学习的技能二)
TypeScript 变量声明 变量是一种使用方便的占位符,用于引用计算机内存地址.我们可以把变量看做存储数据的容器. TypeScript 变量的命名规则:和javascript一样.除了下划线 _ ...
- PHP基础教程 PHP的页面缓冲处理机制
PHP有很多机制.函数,其实就是魔术师,重复发挥好,其实甚至是简单应用,就会出现神奇的效果.兄弟连PHP培训 这里来讲一个ob_start()函数. ob_start()函数用于打开缓冲区,比如hea ...
- spring自带工具类
在spring-core.jar包中,org.springframework.util package下有很多工具类,这些工具类十分具有参考意义.
- Python爬虫十六式 - 第四式: 使用Xpath提取网页内容
Xpath:简单易用的网页内容提取工具 学习一时爽,一直学习一直爽 ! Hello,大家好,我是Connor,一个从无到有的技术小白.上一次我们说到了 requests 的使用方法.到上节课为止, ...
- Selenium 三种等待方式详解
我们在做WEB自动化时,一般要等待页面元素加载完成后,才能执行操作,否则会报找不到元素的错误,这样就要求我们在有些场景下加等待时间. 我们平常用到的有三种等待方式: 强制等待 隐式等待 显示等待 一. ...
- mssql的sql注入拿后台
0x01判断数据 ①判断数据库类型 and exists (select * from sysobjects)--返回正常为mssql(也名sql server) and exists (select ...
- SQL Server阻塞blocking案例分析
今天在性能测试过程中发现大量阻塞报警,检查whoisactive(https://github.com/amachanic/sp_whoisactive/)数据发现,阻塞blocking头部sessi ...
- Python深度学习读书笔记-6.二分类问题
电影评论分类:二分类问题 加载 IMDB 数据集 from keras.datasets import imdb (train_data, train_labels), (test_data, t ...