1.Day01Java概述与环境搭建

1. Java的执行机制

  1. 先编译,在解释
  2. JVM(Java Virtual Machine)虚拟机:使用软件在不同操作系统中,模拟相同的环境。
  3. JRE(Java Runtime Environment)运行环境:包含JVM和解释器,完善的java运行环境。
  4. JDK(Java Development Kit):包含JRE + 类库 + 开发工具包(编辑器 +调试工具)。

2. 环境搭建

测试如下:

  1. javac
  2. java
  3. java -version

3. Java的语言特点

  1. 面向对象(贴近人类思维模式,模拟现实世界,解决现实问题)。

  2. 简单性: Java有虚拟机(JVM),内置了垃圾收集器(GC),自动管理内存空间,规避了可能因为认为导致的问题。相对而言,更安全、更有保障。

  3. 跨平台:跨操作系统(Windows、Unix–Linux、MacOS) 微软 C#(Sharp – 尖锐)

  4. 计算机执行机制:

    ​ 1. 编译执行:在具体的环境中(Windows)执行了一次编译工作(源代码–二进制),操作系统执行时,执行的是编译后的二进制文件。

     2. 执行效率高、不能跨平台(兼容性差)
    
  5. 解释执行:1.在具体环境中,逐行解释并执行,不生成机器码文件。不同的环境都有自己的解释器,

     			2.执行效率低,可以跨平台(浪费资源)
    
  6. Java的执行机制:先编译、再解释

    ​ 将源文件(.java)先编译成平台中立的字节码文件(.class),再执行跨平台的解释执行。将计算机的两种执行特点,合二为一。

4. DOS命令操作

  1. Windows 键 + R 快捷呼出运行窗口(输入cmd并回车打开DOS命令窗口)
  2. 更换盘符:d:
  3. 查看当前目录下的文件及文件夹:dir
  4. 进入文件夹:cd 文件夹的名字
  5. 进入上一级目录:cd…
  6. 返回根目录:cd\
  7. 清空屏幕:cls
  8. 删除文件:del 文件名
  9. 删除文件夹:rd 文件夹名称
  10. 退出:exit

5.第一个java应用程序

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

6. 类的阐述

  1. 同一个源文件中可以定义多个类。

  2. 编译后,每个类都会生成独立的.class文件。

  3. 一个类中,只能有一个主方法,每个类都可以有自己的主方法。

    注:在一个源文件中定义多个类,有一个类错误,影响编译结果。

  4. public修饰的类称为公开类,要求类名必须与文件名称完全相同,包括大小写。

  5. 一个源文件中,只能有一个公开类。

7. Package(包)

  1. 作用:类似文件夹,用于管理字节(.class)文件。
  2. 语法:package 包名。
  3. 位置:必须写在源文件的第一行。
  4. 带包编译:javac -d.源文件名称.java(自动生成目录结构)。
  5. 带包运行:java 包名.类名(包名 + 类名又称全限定名)。
  6. 采用域名倒置的规则:www.baidu.com.cn -> cn.com.baidu.xxx
  7. 例如:cn.com.company.department.group.project.module.XxxClass

8. 编码规范(1)书写格式

  1. 层级之间必须缩进(Tab:一个制表符)。
  2. 一行只写一句代码。
package demo;
public class HelloWorld {
	public static void main(String[] args) {
		System.out.println("Hello");
		System.out.println("World");
	}
}

9. 编码规范(2)代码注释

  1. 单行注释:// 单行注释

  2. 多行注释:/* 多行注释 */

  3. 文档注释:(生成外部文档:javadoc -d.HelloWorld.java)

    ​ /** 文档注释 */

    注:

    ​ 注释不参与编译。

    ​ 编译中文文档注释时,使用javadoc -encoding UTF-8 -d . 源文件名称.java

    ​ 生成文档的类,必须是一个公开类(public修饰的类)

10.编码规范(3)标识符命名

  1. 语法规定:

    ​ 可以由:字母、数字、_、$组成,但不能以数字开头。

  2. 不能与关键字、保留关键字重名。

  3. 约定俗成:

    ​ 望文生义、见名知意。

    ​ 类名由一个或多个单词组成,每个单词首字母大写(Pascal)

    ​ 函数名、变量名由一个或多个单词组成,首单词首字母小写,拼接词首字母大写(camel)

    ​ 包名全小写,只可以使用特殊字符“.”,并且不以“.”开头或结尾。

    ​ 常量全大写,多个单词用_连接

11. 总结

  1. Java由来:1995年推出的面向对象的编程语言。三个平台java平台JavaSE、JavaEE、JavaME,2014年发布的JDK8是商用主流版本。
  2. Java语言的特点:面向对象、简单性、跨平台性。
  3. Java的运行机制:先编译、再解释
  4. 第一个应用程序:定义,java结尾的源文件,书写源代码,Java编译,java运行
  5. package包:定义在源文件的首行,用于管理.class文件
    面向对象、简单性、跨平台性。
  6. Java的运行机制:先编译、再解释
  7. 第一个应用程序:定义,java结尾的源文件,书写源代码,Java编译,java运行
  8. package包:定义在源文件的首行,用于管理.class文件
  9. Java的语言规范:书写格式、代码规范、三种格式、标识符命名

12. 思维导图

思维导图

13. 代码练习

1.程序编译并执行,打印 z

class HelloWorld {
	publlic static void main(String[] args) {
		System.out.println('z');
	}
}

2.代码执行报错,且由于java是先编译,后执行,不产生.class文件

class HelloCity {
    public static void main(String[] args) {
        System.out.print("1");
    }
}

class HelloCenter{
	public static void main(String[] args){
		System.out.print("2");
	}
}
class HelloWorld{
	public static void main(String[] args){
		System.out.print("3");
	}
	public static void main(String[] args){
		System.out.print("4");
	}
}

3.一个程序中只能有一个公共类(public修饰的类),代码报错

public class Second{
	public static void main(String[] args){
		System.out.print("this is public demo");
	}
}

public class Third{
	public static void main(String[] args){
		System.out.print("public class just only one");
	}
}

3.代码编译成功()

package cn.com.qf.bk.student;

public class Second{
	public static void main(String[] args){
		System.out.print("Hello,Second2");
	}
}

class First{
	public static void main(String[] args){
		System.out.print("Hello,First2");
	}
}

class Third{
	public static void main(String[] args){
		System.out.print("Hello,Third2");
	}
}

4.程序错误,java中类名不能以数字开头

package com.qf.group.department;
class 1Test{
	public static void main(String[] args){
		System.out.print("Hello");
	}
}

5.程序错误,文档注释只能用于公共类

/**
	这是演示文档注释的类!
*/
class TestDocAnnotation{
	/**
		这是一个主方法,程序的入口!
		每个类都可以拥有一个主方法!
	*/
	public static void main(String[] args){
		//annotation....
		System.out.print("Hello,this is output");
	}
}

猜你喜欢

转载自blog.csdn.net/zhu_fangyuan/article/details/106796706
今日推荐