Java 基础(从编写到运行)详细说明

Java的优势

跨平台性

安全性高

简单性

高性能

面向对象性

健壮性

Java程序编写和执行的过程:

1.编写。将Java代码编写在.Java结尾的源文件进行编译操作。格式:java字节码文件名

2.编译。针对于.Java结尾的源文件进行编译操作。格式 javac 源文件名.java

3运行。针对于编译后生成的字节码文件。进行解释运行。格式 java 字节码文件名

2.针对编写的说明

java 复制代码
class HelloWorld {
    public static void  main (String[] argc){
        System.out.println("hello,world!!");
    }
}

class HelloWorld { public static void main (String[] argc){ System.out.println("hello,world!!"); } }

其中 class:关键字,表示"类",后面跟着类名。

main()方法的格式是固定的。务必记住:表示程序的入口

public static void main(String[],args)

如果非要有变化,可以写成1. public static void main(String,args[])2.public static void main(String[],a)

args 全称是gaguments.简写成args,或者别的都可以,只是一个名字。

Java程序,是严格区分大小的。

System.out.println("输出的信息");输出语句换行

System.out.print("输出的信息");输出语句不换行

每一行执行语句要以分号结束。

3.针对编译的说明

如果编译不通过,可以考虑的问题:

问题1.查看文件名,文件路径错误

问题2.查看代码的语法是否存在问题。

编译以后,会生成一个或多个字节码文件

每一个字节码对应一个Java类,并且字节码文件名和类名相同。一个源文件可以有多个类。class。

4.针对运行的说明

我们是针对于字节码文件对应的Java类进行解释运行的,要注意区别大小写!

如果允许不通过,可以考虑的问题:

问题1:查看解释运行的类名字,字节码文件路径是否书写错误

问题2:可能存在运行时异常

一个源文件不能出现两个类相同的名字

一个源文件可以有多个类,但是最多有一个类使用public进行声明,且这个类名要和源文件名一致。

注释

//单行注释

/* */多行注释

文档注释(Java特有 )/** */

API

应用程序编程接口

JVM

jdk包含jre,jre里吗就有JVM,jJVM 是一个虚拟的计算机,它为 Java 程序提供了运行环境。

功能

1.实现Java的跨平台性

2。自动内存管理(内存分配,内存回收)

那既然有了JVM,那Java程序还出现内存溢出和内存泄漏的问题吗?YES

内存泄露:从程序角度,命名这块已经是不在使用的内存空间了,但是JVM不认为它是垃圾。

如何看待Java是一门半编译半解释型语言?

因为java编译成字节码文件后,运行有两条路可以选,第一条是通过解释器(前端编译器),另一个则是通过JIT编译执行(后端编译器)。

相关推荐
2301_7820404515 分钟前
CSS Flex布局中如何实现导航栏与Logo的左右分布_利用justify-content- space-between
jvm·数据库·python
CeshirenTester16 分钟前
LangChain的工具调用 vs 原生Skill API:性能差在哪儿?
java·人工智能·langchain
yaoxin52112322 分钟前
400. Java 文件操作基础 - 使用 Buffered Stream I/O 读取文本文件
java·开发语言·python
Fox爱分享24 分钟前
字节二面:10亿数据毫秒级查手机尾号后4位,答不出“异构索引”直接挂?
java·后端·面试
61900833629 分钟前
win idea 控制台中文乱码
java·ide·intellij-idea
折哥的程序人生 · 物流技术专研31 分钟前
《Java面试85题图解版(二)》进阶深化上篇:并发编程 + JVM
java·开发语言·后端·面试
abcnull39 分钟前
用ASM做精准测试(Java)
java·jar·asm·字节码·精准测试
2501_931803751 小时前
Go:一门为解决C语言痛点而生的现代语言
c语言·开发语言·golang
用户8356290780511 小时前
使用 Python 自动创建 Excel 折线图
后端·python
@杰克成1 小时前
Java学习26
java·学习·idea