java基础(一)-虚拟机和第一个命令

news/2024/11/29 1:47:48/

虚拟机:
用 Java 语言编写的程序由 Java 虚拟机 (JVM) 来执行。JVM 是一个特殊的程序,它知道如何执行用 Java 语言编写的程序。并且它的命令列表涵盖范围很大,比如:

System.out.println(“你以为我会说虚拟机是由什么组成,和它的运行环境吗?不,我就只说它能干什么!”);

虚拟机有原则(比较重要):

原则一:

在 Java 编程语言中,每个命令都单独占用一行。分号必须放在命令的末尾。

System.out.println("不带分号会被默认为同一行命令");
System.out.println("java命令中会忽略空格");

原则二:

一个程序不能只包含命令。举个粒子

*“想象一下公寓里的一个房间。一个房间不能独立存在。它是某个公寓的一部分。一个公寓也不能独立存在。它是某个建筑的一部分。”
“另一方面,我们可以说一个建筑物被分为多个公寓,而一个公寓被分为多个房间。”
“一个命令就像一个房间。在 Java 编程语言中,命令不能单独存在。它是函数的一部分(在 Java 语言中,‘函数’也称为‘方法’)。方法是类的一部分。换句话说,类被划分为多个方法,而方法被划分为多个命令。”

因此,类就是一个公寓楼,函数/方法是一个公寓,而命令是一个房间。

“Java 中的程序由类组成。 可能有数万个类。最小程序含有一个类。对于每个类,都创建一个单独的文件。文件的名称与类的名称相匹配。”

“假设你决定创建一个描述住宅 (home) 的类。你需要创建一个将保存在 Home.java 文件中的 Home 类。”
“如果你想在程序中描述一只猫 (cat) ,那么你必须创建一个 Cat.java 文件,并在文件中声明 Cat 类,等等。”

“这些文件包含用 Java 编程语言编写的代码(文本)。通常一个类的代码由‘类名’和‘类主体’组成。

类主体写在大括号内。这就是 Home 类(Home.java文件)的样子:

public class Home
{类主体
}

类主体可能包含多个变量(也称为数据)和方法(‘函数’)。

public class Home
{变量 A变量 Z方法 1方法 N
}

可能有点绕,举个粒子

public class Home
//大括号内的就是类主体
{int a;//变量int b;//变量public static void main(String[] args)//main方法,一个程序中必须包含的方法{System.out.print("1");//命令}public static double pi()//方法{return 3.14;}
}

类可以不带变量,也不带方法,但一个最小程序必须至少包含一个类,该类必须包含至少一个方法/函数才能使程序运行。这个方法必须命名为‘main’。
最小程序是这样的:

public class Home
{//不可更改部分public static void main (String[] args)//没有包含任何变量和命令,没有比它更小的程序了{}
}

一个程序的启动类可以有不同的名称,但main方法必须始终保持相同!

ok,这篇先到这,之后有时间再写~


http://www.ppmy.cn/news/52109.html

相关文章

Spring(11. 循环依赖 - 周阳)学习笔记

上一篇 :10. 面试问题简析 文章目录 1. Spring AOP1.1. Aop 常用注解1.2 测试前的准备工作1.2.1 业务类1.2.2 切面类 1.3 Spring4 下的测试1.3.1 POM 文件1.3.2 创建测试类1.3.3 Aop 测试结果 1.4 Spring 5 下的测试1.4.1 POM 文件1.4.2 创建测试类1.4.3 Aop 测试结…

【UE】倒计时归零时结束游戏

上一篇博客(【UE】一个简易的游戏计时器)完成了游戏时间每秒1的功能,本篇博客在此基础上完成倒计归零时结束游戏的功能 效果 步骤 1. 打开“ThirdPersonGameMode”,将剩余的秒数和分钟数的默认值分别设置为1和59 在事件图表中添…

Flutter 状态管理框架 Provider 和 Get 原理分析

为什么需要状态管理? 首先,为什么需要状态管理,这是因为 Flutter 基于 声明式 构建 UI ,使用状态管理的目的之一就是解决「声明式」开发带来的问题。 「声明式」开发是一种区别于传原生的方式,所以我们没有在原生开发…

对象=拷贝构造,有无指针成员的不同之处

比如类Add,Add AB: 1、当新声明一个对象并赋初始值时,使用时,编译器会默认,将B的成员变量,拷贝赋值给B,使用的是浅拷贝,该函数自己不写到类内部时,编译器会默认隐式自带&#xff1b…

Kafka技术基础

Apache Kafka发源于LinkedIn,于2011年成为Apache的孵化项目,随后于2012年成为Apache的主要项目之一,是消息队列的一种实现方式,提供消息的持久化。Kafka使用Scala和Java进行编写。Apache Kafka是一个快速、可扩展的、高吞吐、可容…

Docker部署MySQL主从复制

文章目录 平台说明一、Docker创建网络二、创建MySQL主从容器1.拉取镜像2.查看镜像3.创建启动容器 三、主从配置1.主机配置文件2.从机配置文件3.注意事项4.重启容器5.连接主从数据库主机配置从机配置启动从机复制 四、测试主从复制 平台说明 操作系统:Windows 11 Do…

Amazon Linux2使用kubeadm部署安装K8S集群

环境信息 在AWS上启动3台Amazon Linux2的服务器,服务器配置为2vcpu 和2GB内存 部署K8S集群 1. 修改主机名(可选步骤) sudo hostnamectl set-hostname master 2.导入k8s的yum仓库密钥 sudo rpm --import https://packages.cloud.google.c…

Android hook实例

hook核心逻辑 hook的基本思路就是 拦截原调用逻辑,加入自己新增的逻辑,然后再执行原逻辑。 技术实现方案通常是 反射 动态代理。 怎么寻找hook点 ? hook点的优先级为: 单例>静态类>public final Android常用hook点 …