day01

java的特点

  • 简单:摒弃了c和c++的指针,垃圾回收机制,相对而言简单许多

  • 安全:几乎各大银行都会使用java作为其开发平台

  • 跨平台:可以运行在任何的操作系统之上,windows, linux以及mac平台,其具有一定的“欺骗性”, 因为java最终的字节码文件并不直接运行在对应的操作系统之上,而是运行在各个操作系统锁对应的不同的java虚拟机之上,可以做到一次编译,到处运行。java的字节码可以跨平台,但是java虚拟机不跨平台

java版本

  • java se/j2se/jse: java standard edtion: java标准版,可以用于java的桌面应用

  • java me/j2me/jme: java micro edition: java微型版,在java的标准版之上做了一些精简,主要用于早期的手机开发、单片机以及机顶盒开发,但是注意当时的手机开发与现在的手机开发Android和iOS还是有区别的

  • java ee/j2ee/jee : java enterprise edition: java 企业级开发,主要用于做各种系统、平台等

java的发展

早期oak,橡树,后来被修改为java

早期是sun公司,后来是oracle,甲骨文

java的版本,早期1.0, 1.1,1.2之后有了更大的修改与优化,所以几乎说的只要是java2说的都是java1.2以上的所有版本,从java1.5之后,不再说java1.5,而直接说java5

目前企业中用的是java8或者是java11

目前最新的java版本是java21

jdk和jre以及jvm

jdk: java development kit,java的开发工具集

jre: java runtime environment,java运行时环境

jvm: java virtual machine, java虚拟机

hello world

  1. 代码的编写

    1. 使用记事本进行java的代码的编写

    2. 右键新建一个文本文档,命名为HelloWorld.java,注意后缀不能含有txt

    3. 代码的编写

    //class是关键字,用来定义一个类,后面跟的是类名class HelloWorld{​//main方法,java程序的入口就是main方法//main方法有四要素,必须是public static void 以及String类型的数组参数public static void main(String[] args){System.out.println("Hello world.");}}
  2. 代码的编译

    1. 安装jdk,安装完成之后的目录如下:

      1. bin,binary,二进制文件,不同操作系统下使用不同的后缀,javac, java, javadoc, native2ascii

      2. include,包含一些头文件

      3. jre: java 运行时环境,jdk包含了jre

      4. lib: library,仓库,里面含有运行java所需要的各种库文件

      5. sample:案例

      6. src.zip,java的源文件

    2. 编译java文件

      1. 使用javac命令来编译上面完成好的java文件

      2. 使用命令javac Xxx.java文件,如果出现有中文乱码编译不通过,可以使用javac -encoding utf-8 Xxx.java

      3. 完成后生成Xxx.class

    3. 代码的运行

      1. 使用java Xxx,注意后面不能跟.class,java后面跟的直接是类名

      2. java HelloWorld

      3. 命令窗口出现Hello world字样,程序运行成功

环境变量

用户变量:只有当前用户可以使用的环境变量

系统变量:任何能够使用该系统的用户都可以使用的环境变量

最终的变量将是系统变量拼接当前的用户变量

我们可以将需要的文件所在的目录加入path中,最终的好处是在任何路径下都可以找到这些命令。javac、java

右键我的电脑-属性-高级系统设置-高级-环境变量,开始进行设置

代码编写

print与println对比

class Day0226{​public static void main(String[] args){//print是打印完指定内容后,直接定位在当前位置//println是打印完指定内容后,进行换行操作System.out.print("today is 0226");System.out.print("年已经过完了!");}}

严格区分大小写

class Demo01{//String的S大写//System的S大写public static void main(String[] args){System.out.println("this is Demo01");}}

形参与实参

class Demo02{//args是方法中的形参,形式上的参数,其目的是起到占位符的作用,一旦叫这个名字,后面要使用的时候,必须跟前面名字保持一致//args因此可以换成abc, aaa,ccc,zzz都可以,但是不能换成111,111是常量,也不能换成1abc,注意变量必须不能以数字开头public static void main(String[] abc){System.out.println("this is demo02");System.out.println(abc[0]);}}

public 修饰的类

//public修饰的类,要求文件名必须与类名完全相同,包括大小写//注意Windows操作系统不区分大小写public class Demo033{public static void main(String[] abc){System.out.println("this is demo033");}}