尚硅谷-java基础-java概述

一、计算机编程语言对比

  • C、Pascal、Fortran面向过程的语言
  • C++面向过程/面向对象
  • Java跨平台的纯面向对象的语言
  • .NET跨语言的平台
  • Python、Scala…

注:面向对象与面向过程的区别

  • 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;
  • 面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。

二、java语言特点

  • 特点一:面向对象
    • 两个基本概念:类、对象
    • 三大特性:封装、继承、多态
  • 特点二:健壮性
    • 吸收了C/C++语言的优点,但去掉了其影响程序健壮性的部分(如指针、内存的申请与 释放等),提供了一个相对安全的内存管理和访问机制
  • 特点三:跨平台性
    • 跨平台性:通过Java语言编写的应用程序在不同的系统平台上都可以运行。“Write once , Run Anywhere”
    • 原理:只要在需要运行 java 应用程序的操作系统上,先安装一个Java虚拟机 (JVM Java Virtual Machine) 即可。由JVM来负责Java程序在该系统中的运行。

三、java语言运行机制及运行过程

  • JVM是虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指 令,管理数据、内存、寄存器。
  • 对于不同的平台(windows/linux),有不同的虚拟机。
  • 只有某平台提供了对应的java虚拟机,java程序才可在此平台运行
  • Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”

四、JDK、JRE、JVM关系

  • JDK(Java Development Kit Java开发工具包) JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了 JRE。所以安装了JDK,就不用在单独安装JRE了。
  • JRE(Java Runtime Environment Java运行环境) 包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等, 如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
  • JVM(Java Virtual Machine java虚拟机)是虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指 令,管理数据、内存、寄存器。

注意:• JDK = JRE + 开发工具集(例如Javac编译工具等)  JRE = JVM + Java SE标准类库

五、环境变量的配置

        为什么要配置环境变量-没有配置环境变量前,只有将路径cd到指定文件夹下才能执行,配置环境变量之后,会自动搜索配置的路径,看是否能找到执行程序的路径!!!

六、helloworld

  1. 将 Java 代码编写到扩展名为 .java 的文件中。
  2. 通过 javac 命令对该 java 文件进行编译。
  3. 通过 java 命令对生成的 class 文件进行运行。

.java文件(源文件)→.class文件(字节码文件)→结果

                           javac.exe                              java.exe        

七、java注释

1.Java中的注释类型:

  • 单行注释
    • 格式: //注释文字
  • 多行注释
    • 格式: /* 注释文字 */
  • 文档注释 (java特有)
    • 格式:/** @author 指定java程序的作者
      •         @version 指定源文件的版本                                              */                                              

2.注释区别及联系

  • 对于单行和多行注释,被注释的文字,不会被JVM(java虚拟机)解释执行,即不参与编译。
  • 多行注释里面不允许有多行注释嵌套。
  • 文档注释内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形 式体现的该程序的说明文档。

八、第一个java程序的总结

1. java程序编写-编译-运行的过程

  • 编写:我们将编写的java代码保存在以".java"结尾的源文件中
  • 编译:使用javac.exe命令编译我们的java源文件。格式:javac 源文件名.java
  • 运行:使用java.exe命令解释运行我们的字节码文件。 格式:java 类名

2.在一个java源文件中可以声明多个class。但是,只能最多有一个类声明为public的。
而且要求声明为public的类的类名必须与源文件名相同。

3. 程序的入口是main()方法。格式是固定的。

4. 输出语句:

  • System.out.println():先输出数据,然后换行
  • System.out.print():只输出数据

5.每一行执行语句都以";"结束。

6.编译的过程:编译以后,会生成一个或多个字节码文件。字节码文件的文件名与java源文件中的类名相同。

/*
对第一个java程序进行总结
1. java程序编写-编译-运行的过程
编写:我们将编写的java代码保存在以".java"结尾的源文件中
编译:使用javac.exe命令编译我们的java源文件。格式:javac 源文件名.java
运行:使用java.exe命令解释运行我们的字节码文件。 格式:java 类名

2.
在一个java源文件中可以声明多个class。但是,只能最多有一个类声明为public的。
而且要求声明为public的类的类名必须与源文件名相同。

3. 程序的入口是main()方法。格式是固定的。

4. 输出语句:
System.out.println():先输出数据,然后换行
System.out.print():只输出数据

5.每一行执行语句都以";"结束。

6.编译的过程:编译以后,会生成一个或多个字节码文件。字节码文件的文件名与java源文件中的类名相同。

*/
public class Hello {
	public static void main(String[] args) {//public static void main(String a[]) {//arguments:参数
		System.out.print("Hello World!");
		System.out.println();//换行
		System.out.println("Hello World!");
		}
}

class Person{

}

class Animal{
	
}

九、Scanner类的用法(从键盘获取不同类型的变量)

  • 具体实现步骤:
    • 1.导包:import java.util.Scanner;
    • 2.Scanner的实例化:Scanner scan = new Scanner(System.in);
    • 3.调用Scanner类的相关方法(next() / nextXxx()),来获取指定类型的变量
  • 注意:
    • 需要根据相应的方法,来输入指定类型的值。如果输入的数据类型与要求的类型不匹配时,会报异常:InputMisMatchException
    • 导致程序终止。
  • 案例:
import java.util.Scanner;

class ScannerTest{
	
	public static void main(String[] args){
		//2.Scanner的实例化
		Scanner scan = new Scanner(System.in);
		
		//3.调用Scanner类的相关方法
		System.out.println("请输入你的姓名:");
		String name = scan.next();
		System.out.println(name);

		System.out.println("请输入你的芳龄:");
		int age = scan.nextInt();
		System.out.println(age);

		System.out.println("请输入你的体重:");
		double weight = scan.nextDouble();
		System.out.println(weight);

		System.out.println("你是否相中我了呢?(true/false)");
		boolean isLove = scan.nextBoolean();
		System.out.println(isLove);

		//对于char型的获取,Scanner没有提供相关的方法。只能获取一个字符串
		System.out.println("请输入你的性别:(男/女)");
		String gender = scan.next();//"男"
		char genderChar = gender.charAt(0);//获取索引为0位置上的字符
		System.out.println(genderChar);
		

	}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

D_lullaby

你的支持是对我最大的鼓励!!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值