一.JAVA入门

一、Java SE课程概述

1.1 课程概述

  1. Java语言核心结构:数据类型、变量、流程控制、数组。
  2. Java面向对象核心逻辑:封装、继承、多态、抽象、静态、接口。
  3. Java高级应用:集合、I/O、多线程、网络编程、反射。
  4. MySQL/JDBC:将程序中的数据存储到数据库里,实现持久化存储。

1.2 计算机

  • 一台设备。由硬件和软件组成。
  • 硬件:
    • CPU、内存、硬盘、输入设备(键盘、鼠标、指纹录入)、输出设备(显示器、打印机)
  • 软件:
    • 系统软件:操作系统。
    • 应用软件:安装在操作系统上的软件。
  • 人机交互:
    • 图形化界面:苹果是鼻祖。windows是后来的。
    • 命令行方式:将来运行的程序在服务器上。服务器是没有图形化界面的。纯靠命令。

1.3 常用的DOS命令

  • 打开DOS命令窗口:
    • win键+r键,输入cmd打开命令窗口
      在这里插入图片描述

    • 切换盘符:盘符名称: :是英文的

    • 查看当前目录的内容:dir

    • 切换/进入文件夹: cd 文件夹名

    • 返回根目录:cd\

    • 切换/进入多级文件夹:cd 文件夹名\文件夹名\文件夹名

    • 返回上一级:cd…

    • 清屏:cls

    • 打开一个新窗口:start

    • 退出窗口:exit

    • 创建文件夹:mkdir 文件夹名称

    • 创建多级文件夹:mkdir 文件夹名称\文件夹名称

    • 删除文件夹:rd 文件夹名称 只能删除空目录 不走回收站(操作不可逆)

    • 删除非空文件夹: rd /s/q 文件夹名称 /s 是递归删除 /q 别问!

    • 创建文件:type nul > 文件名

    • 删除文件:del 文件名.后缀名 不走回收站 不可逆

    • 后缀批量删除:del *.后缀名

    • 删除某些统配文件: del a*.txt 删除a开头的.txt文件

    • 经验总结:

      • 快速进入某个文件夹,在文件夹的上方,地址栏里输入cmd,打开窗口即在当前目录。
      • 上下方向键,可以快速输入之前输入过的命令
      • 文件夹名称过长,可以按tab键。如果出现多个前缀相同的文件或文件夹,按tab键选择,或多打个名称
      • 查看文件,如果没有.txt这种后缀名,则在上方点击查看,勾选文件扩展名。

1.4 计算机编程语言

  • 第一代:机器语言:二进制 0101
  • 第二代:汇编语言:增加助记符,简化了对应的命令执行操作。 最终还是要转换为机器语言。
  • 第三代:高级语言:独立性,不与硬件绑定。需要编译器,编译成对应的机器码文件,再执行。
  • 不管是什么语言,不管第几代语言,最终都会向机器语言靠拢,不管是啥,cpu都只认识0和1.

二、Java语言概述

2.1 Java语言概述

  • 是一种面向对象的编程语言,主要开发web程序。应用程序。
  • Java之父:詹姆斯*高斯林
  • IDEA->Java写的
  • Hbuilder->Java写的
  • Java渗透到各个领域了。。
  • 目前学习的是JDK17.虽然jdk21是下一个稳定长期支持的版本,但是太年轻了。还有待观望。

2.2 Java三个版本

  • Java SE:标准版,Java基础语法。
  • Java EE:企业版,开发企业级应用的。
  • Java ME:小型版,小型机、电视。

2.3 JDK的安装

  • 下载地址:Oracle官网:www.oracle.com

  • software文件夹里,给大家提供jdk17。

  • 卸载:

    • 控制面板、应用设置、360、腾讯电脑管家,将jdk卸载掉
  • 安装:

    • 直接双击安装包,更换目录即可。
  • 配置环境变量前奏:

    • 查看系统环境变量:
      • 右键此电脑->属性->高级系统设置->环境变量->path:
      • C:\Program Files\Common Files\Oracle\Java\javapath
      • 此路径帮助我们定义了开发Java程序的基本命令。
      • 在这里插入图片描述
  • 配置完整的Java开发的命令环境变量:

    • 最直接的方式:只配置path: (不推荐)

      • 将jdk的目录,到bin目录里,整体的路径复制一份到path里。
      • 在这里插入图片描述
    • 配置JAVA_HOME:第三方的软件在调用JDK的时候,不是调用的path,而是调用JAVA_HOME**(推荐)**

      • 先在path中删除jdk17自动生成的 C:\Program Files\Common Files\Oracle\Java\javapath
      • 找到jdk所在的目录,bin的上一级。目录复制。
      • 到环境变量中的系统变量下,新建JAVA_HOME
        • 输入 E:\Program Files\jdk-17
      • 到path环境变量里,点击新建,引用:%JAVA_HOME%\bin

2.4 Java开发环境

  1. JVM:Java虚拟机,运行Java程序的环境,是一个假象的计算机。在任何一台操作系统上,安装了一个运行Java的环境。
  2. JRE:Java运行环境,Java的运行所需的部件,包含了JVM和核心类库
  3. JDK:Java开发工具包,包含了JRE和开发工具(javac 、 java命令)

三、Java开发第一个程序

3.1 HelloWorld

  1. 编写:
    1. 在文件夹里创建一个文件,修改后缀名为.java
    2. 一定要让后缀名显示出来
  2. 编译:
    1. 将.java文件,编译成.class字节码文件,JVM只认识.class文件。
    2. javac HelloWorld.java
  3. 运行:
    1. 运行编译后的.class字节码文件。
    2. java HelloWorld 此处不用加.class JVM已经认识class文件
public class HelloWorld{
	public static void main(String[] args){
		System.out.println("Hello World");
	}
}

在这里插入图片描述

3.2 第一个程序遇到的问题

  1. 乱码问题:
    1. windows控制台是GBK,notepad++编写文件的编码是UTF-8.不一致导致乱码。
    2. 在notepad++里,找到编码,点击转为ANSI编码
  2. .java源文件发生更改:
    1. 记得要重新编译。
  3. jdk新特性:动态编译:
    1. 可以直接使用java命令 运行.java文件。
    2. 原理是程序员可以不用编译了,但是实际上再JVM中还是要经过javac编译,不产生.class文件,而是直接由jvm运行了。
  4. 源文件名与class类名的关系
    1. 在这里插入图片描述

    2. class类名是public的,则class类名必须和源文件名一致。

    3. 注意:动态编译不检测这个规则

  5. 类是否有public修饰
    1. 一旦类名用public修饰,则必须和原文件名一致。
    2. 不用public修饰,则可以源文件名和类名不一致
  6. 一个源文件中,只能写一个class类吗?
    1. 一个源文件中,可以定义多个class。 (不推荐这么做!)
    2. 一个源文件中,只能有一个public修饰的class。

3.3 配置Notepad++

  • 设置->首选项->新建—>编码选择ANSI,文件类型选java

3.4 println和print

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

println:打印并换行
print:打印不换行

四、注释

4.1 作用

  • 解释代码:给自己看,同事看。
  • 让我写注释的。 我接手的代码他没有注释就得一行一行看,比较麻烦。

4.2 注释的分类

  • 单行注释:解释一行代码的。

  • 多行注释:解释一段代码。

  • 文档注释:生成代码的文档的。

  • //  单行注释
    
    /*
    	多行注释:
    */
    
    /**
    	* 这是文档注释
    	* @author s
    	* @version 1.0.0
    */
    
  • 生成文档的命令:javadoc -d 生成文档保存的文件夹名称 -author -version 源文件名称.java

//这是一个注释测试类
public class CommentTest{
	/**
	* 这是程序的入口
	* @author s
	* @version 1.0.0
	*/
	public static void main(String[] args){
		//是一行输出语句
		System.out.println("你好~安琪拉");
		/*
			多行注释:下面是英雄介绍!
		*/
		System.out.println("你好~妲己");
		System.out.println("你好~甄姬");
		System.out.println("你好~王昭君");
		
	}
}

4.3 第一个程序做解释

/*
	public :公共的访问权限
	class : 类,Java中代码最小组成单元,所有的代码都要写在类里。
	DescriptionTest:类名 自定义的。 首字母大写。拼接的单词首字母大写
*/
public class DescriptionTest{
	//程序的入口:Java程序要执行,都要通过main方法。
	public static void main(String[] args){
		//输出语句:输出""里的内容到控制台  cmd
		System.out.println("你好,李青");
	}
}

注意:

  1. 类名和源文件名一致。
  2. 所有的符号都是英文的。
  3. 程序中出现的括号都是成对的。
  4. 一行只写一句代码,以;为结尾
  5. 不要讲main写成mian。饿了咱就订外卖,别依赖程序。
  6. String和System首字母都是大写的。

五、JVM

5.1 Java的特点

  • 跨平台:

    • 跨越,不关心操作系统。
    • 平台:操作系统
    • 在不同的操作系统中,安装了jdk后,会自带jvm。jvm会屏蔽不同操作系统间的底层差异。我们程序员运行程序在JVM里,JVM调用本地计算机的硬件。
  • 面向对象。。。。。后续的学习逐步我们去接受、理解即可。

六、关键字和标识符

6.1 什么是关键字

  • 在Java中,被赋予了特殊含义的单词/字符串 class public static
  • 关键字里还有保留字:占用一些单词,当前没有意义,但是后续的版本,该单词会被赋予特殊含义。

6.2 标识符

/*
	关键字:具备特殊含义的
	标识符:自定义的单词或名称。 类名、变量、常量名、包名
		命名规则:规定:你必须这么做
			1.字母(A-z)数字(0-9)下划线_ $美元符
			2.数字不能开头
			3.严格区分大小写 String System
			4.千万不能和关键字重名
				
		命名规范:约定:你这么做,大家都这么做。
			1.见名知意 Test 测试 Comment 注释 
			2.类名 首字母大写,拼接的单词首字母大写
			3.对变量名 方法名 首字母小写,拼接的单词首字母大写。
				getName studentAge
			4.常量名 单词全大写 多个单词用_拼接 MAX_AGE  MAX_SCORE
			5.包名,必须全部小写。 com.atguigu.demo
*/
class ApplicationContext{
	public static void main(String[] args){
		System.out.println("Hello Class");
	}
}
  • 16
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值