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编译执行(后端编译器)。

相关推荐
糖果店的幽灵1 分钟前
时间序列处理
开发语言·python·pandas
摇滚侠6 分钟前
git ignore 忽略 .idea 目录 全新项目(尚未提交过 .idea).idea 已经被 Git 跟踪(已提交过)
java·git·intellij-idea
linge_sun6 分钟前
SpringAI SQL 智能助手实战:用自然语言查询数据库
java·人工智能·ai编程
熟悉的新风景6 分钟前
maven常用依赖
java·maven
light blue bird7 分钟前
3C 数码电子BOM 协同工作台组件
java·开发语言·jvm·windows·.net·桌面端
喵叔哟8 分钟前
第2周学习笔记
笔记·python·学习·langchain
落羽的落羽8 分钟前
【项目】JsonRpc框架——功能测试、项目总结
linux·服务器·开发语言·c++·qt·算法·机器学习
ZC跨境爬虫12 分钟前
跟着 MDN 学JavaScript day_6:JavaScript 中的基础数学——数字与运算符
开发语言·前端·javascript·学习·ecmascript
copyer_xyf12 分钟前
Python 迭代器与生成器
前端·后端·python
我是一颗柠檬15 分钟前
【Redis】Redis分布式锁Day13(2026年)
java·redis·分布式·缓存