1.1 java 基础语法

news2025/1/16 7:47:40

目录

一、Java 基础语法

(1)对象:

(2)类:

(3)方法:

(4)实例变量:

二、如何运行java程序(前提是java的环境已经创建完了,比如那个jdk了,编辑器了)

1、java注意项

大小写敏感:

类名:

方法名:

源文件名:

主方法入口:

2、Java 标识符

3、Java修饰符

4、Java 变量

5、Java 数组

6、Java 枚举

7、Java 关键字

8、Java注释

9、Java 空行

10、继承

11、接口

12、Java 源程序与编译型运行区别


使用的编辑器是vscode 

一、Java 基础语法

一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。

Java语言是面向对象的程序设计语言,Java程序的基本组成单元是类,类体中又包括属性与方法两部分。

每一个应用程序都必须包含一个main()方法,含有main()方法的类称为主类。

文件名必须和类名Frist相同,即Frist.java。还要注意大小写,Java是区分大小写的。

把这个最容易出错的先说了。

(1)对象

对象是类的一个实例,有状态和行为。例如,一只小鸟是一个对象,它的状态有:颜色、名字、品种;行为有:飞行、叫、吃等。

(2)类

类是一个模板,它描述一类对象的行为和状态。

(3)方法

方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。

(4)实例变量

每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。

public class HelloWorld {
     /* 第一个Java程序 * 它将输出字符串 Hello World */ 
    public static void main(String[] args) { 
        System.out.println("Hello World"); 
        // 输出 Hello World 
} }

把文件名保存为:HelloWorld.java;文件名必须和类名Frist相同,即Frist.java。还要注意大小写,Java是区分大小写的。再次强调一下!!!!

二、如何运行java程序(前提是java的环境已经创建完了,比如那个jdk了,编辑器了)

打开 vscode终端命令窗口,进入目标文件所在的位置,假设是 C:\

在命令行窗口输入 javac HelloWorld.java 按下回车键编译代码。如果代码没有错误,终端命令提示符会进入下一行(假设环境变量都设置好了)。

再键输入 java HelloWorld 按下回车键就可以运行程序了

你将会在窗口看到 Hello World

$ javac HelloWorld.java
$ java HelloWorld
Hello World

当遇到编码问题,我们可以使用 -encoding 选项设置 utf-8 来编译:

javac -encoding UTF-8 HelloWorld.java
java HelloWorld 

1、java注意项

编写 Java 程序时,应注意以下几点:

大小写敏感

Java 是大小写敏感的,这就意味着标识符 Hello 与 hello 是不同的。

类名

对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass 。

方法名

所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。

源文件名

源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记 Java 是大小写敏感的),文件名的后缀为 .java。(如果文件名和类名不相同则会导致编译错误)。

主方法入口

所有的 Java 程序由 public static void main(String[] args) 方法开始执行。

2、Java 标识符

Java 所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。

关于 Java 标识符,有以下几点需要注意:

  1. 所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始
  2. 首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合
  3. 关键字不能用作标识符
  4. 标识符是大小写敏感的
  5. 合法标识符举例:age、$salary、_value、__1_value
  6. 非法标识符举例:123abc、-salary

3、Java修饰符

像其他语言一样,Java可以使用修饰符来修饰类中方法和属性。主要有两类修饰符:

  • 访问控制修饰符 : default, public , protected, private
  • 非访问控制修饰符 : final, abstract, static, synchronized

在后面的章节中我们会深入讨论 Java 修饰符。

4、Java 变量

Java 中主要有如下几种类型的变量

  • 局部变量
  • 类变量(静态变量)
  • 成员变量(非静态变量)

5、Java 数组

数组是储存在堆上的对象,可以保存多个同类型变量。在后面的章节中,我们将会学到如何声明、构造以及初始化一个数组。

6、Java 枚举

Java 5.0引入了枚举,枚举限制变量只能是预先设定好的值。使用枚举可以减少代码中的 bug。

例如,我们为果汁店设计一个程序,它将限制果汁为小杯、中杯、大杯。这就意味着它不允许顾客点除了这三种尺寸外的果汁。

class FreshJuice { 
enum FreshJuiceSize{ SMALL, MEDIUM , LARGE } 
FreshJuiceSize size; 
} 
public class FreshJuiceTest { 
public static void main(String[] args){ 
FreshJuice juice = new FreshJuice(); 
juice.size = FreshJuice.FreshJuiceSize.MEDIUM ; 
} }

注意:枚举可以单独声明或者声明在类里面。方法、变量、构造函数也可以在枚举中定义。

7、Java 关键字

任何编程语言的关键字都应该记忆一下,可以避免在定义,声明变量的时候出现报错。

这些保留字不能用于常量、变量、和任何标识符的名称。

类别

关键字

说明

访问控制

private

私有的

protected

受保护的

public

公共的

default

默认

类、方法和变量修饰符

abstract

声明抽象

class

extends

扩充,继承

final

最终值,不可改变的

implements

实现(接口)

interface

接口

native

本地,原生方法(非 Java 实现)

new

新,创建

static

静态

strictfp

严格,精准

synchronized

线程,同步

transient

短暂

volatile

易失

程序控制语句

break

跳出循环

case

定义一个值以供 switch 选择

continue

继续

do

运行

else

否则

for

循环

if

如果

instanceof

实例

return

返回

switch

根据值选择执行

while

循环

错误处理

assert

断言表达式是否为真

catch

捕捉异常

finally

有没有异常都执行

throw

抛出一个异常对象

throws

声明一个异常可能被抛出

try

捕获异常

包相关

import

引入

package

基本类型

boolean

布尔型

byte

字节型

char

字符型

double

双精度浮点

float

单精度浮点

int

整型

long

长整型

short

短整型

变量引用

super

父类,超类

this

本类

void

无返回值

保留关键字

goto

是关键字,但不能使用

const

是关键字,但不能使用

注意:Java 的 null 不是关键字,类似于 true 和 false,它是一个字面常量,不允许作为标识符使用。

8、Java注释

类似于 C/C++、Java 也支持单行以及多行注释。注释中的字符将被 Java 编译器忽略。

public class HelloWorld { 
    /* 这是第一个Java程序 * 它将输出 Hello World * 这是一个多行注释的示例 */ 
    public static void main(String[] args){ 
    // 这是单行注释的示例 /* 这个也是单行注释的示例 */ 
        System.out.println("Hello World"); 
} }

9、Java 空行

空白行或者有注释的行,Java 编译器都会忽略掉。

10、继承

在 Java 中,一个类可以由其他类派生。如果你要创建一个类,而且已经存在一个类具有你所需要的属性或方法,那么你可以将新创建的类继承该类。

利用继承的方法,可以重用已存在类的方法和属性,而不用重写这些代码。被继承的类称为超类(super class),派生类称为子类(sub class)。

11、接口

在 Java 中,接口可理解为对象间相互通信的协议。接口在继承中扮演着很重要的角色。

接口只定义派生要用到的方法,但是方法的具体实现完全取决于派生类。

12、Java 源程序与编译型运行区别

如下图所示:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/162311.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

19.Isaac教程--C语言接口(Isaac C API)

Isaac C API ISAAC教程合集地址: https://blog.csdn.net/kunhe0512/category_12163211.html 文章目录Isaac C API程序流程和消息格式ROS示例独立示例启动和停止应用程序向 Isaac 应用程序发布消息从 Isaac 应用程序接收消息语言环境设置示例消息ImageProtoRangeScanProtoStateP…

C语言 八皇后(包含错误代码及分析)

基本思路:用递归思想解决,在8*8的棋盘放置8个皇后,则放置成功会每行有且仅有一个皇后(因为皇后不能同行),所以可以循环行,尝试在某列放置,和 全排列 http://t.csdn.cn/kvIXC 的解决方…

vulnhub DC系列 DC-4

总结:爆破,teehee提权 目录 下载地址 漏洞分析 信息收集 密码爆破 命令执行 ​编辑 ssh爆破 提权 下载地址 DC-4.zip (Size: 617 MB)Download: http://www.five86.com/downloads/DC-4.zipDownload (Mirror): https://download.vulnhub.com/dc/D…

远程连接mysql报错:1130 - Host XXX is not allowed to connect to this MySQL server

问题描述 1130 - Host 123.120.193.96 is not allowed to connect to this MySQL server 译:不允许主机 123.120.193.96 连接到此 MySQL 服务器 远程连接的时候出现如下错误: 问题分析 根据描述提示,在用Navicat配置远程连接Mysql数据库时遇…

【Node.js】写一个数据自动整理成表格的脚本

前言 企业项目进行数据埋点后,埋点事件名需要整理成Excel表格便于统计,目标是将下图左侧数据转化成下图右侧的Excel表格: 考虑到左侧埋点数据是随项目迭代增加的,埋点数据每增加一次我就要把数据一条一条的CtrlC/V复制粘贴至Ex…

春节要放假了,外贸人你准备好了吗?

一转眼,老外们的假期即将结束,而我们的春节假期即将开启。有人会想:工作一年了,好不容易春节放个假,我是不是应该好好休息了?对别人是!但是对于我们外贸人,并不是!很多外…

第十三届蓝桥杯C++B组省赛 J 题——砍竹子(AC)

1.砍竹子 1.题目描述 这天,小明在砍竹子,他面前有 nnn 棵竹子排成一排,一开始第 iii棵竹子的高度为 hihihi。 他觉得一棵一棵砍太慢了,决定使用魔法来砍竹子。 魔法可以对连续的一段相同高度的竹子使用,假设这一段…

数学基本算法

欧几里得算法 求两个数的最大公约数: /**** param a 整数* param b 整数* return 两个整数的最大公约数*/public static int gcd(int a,int b){return b0?a:gcd(b,a%b);} 扩展欧几里得 /*** * param a * param b (a,b)两个整数* param x * param y (x,y)…

LeNet5模型与全连接模型的差异

1 问题深度学习训练过程中,有很多的训练模型,我们组就在思考LeNet模型与之前运用的全连接模型在训练精度损失与验证精度损失上有什么差别?2 方法这是LeNet模型的主要代码,对数据进行两成卷积与两次池化之后再建立三成全连接即可。…

Oracle数据库的监控指标

一、Oracle 监控指标 Oracle数据库常见性能指标主要有:当前登录数、非阻塞锁数、当前死锁数、阻塞锁数、当前锁数、会话数等内容,如下图所示。 注意:以下是 Oracle 监控所需要的指标,具体根据需要监控哪些、超阈值而定。 1.1 新建主机群组 1.2 新建模板 1.3 创建主机 …

Qt 6.4.2在Windows上安装过程及简单验证

Qt是一个跨平台的C开发库,用来开发图形用户界面(Graphical User Interface, GUI)。它支持Windows、Linux、macOS、Android、iOS、QNX等平台,一个框架、一套代码库、任意平台部署。Qt有开源和商业两种许可。 Qt从5.15开始官方不再直接提供开源的exe…

H5——连连看小游戏实现思路及源码

部门要求推广新产品用连连看小游戏的方式, 设计那边UI还没有排期,先撸个功能demo,正好记录一下; 连连看都玩过,程序的关键在于判断连续点击的两张图片是否能够消除,两个图片消除的条件有两个: …

【3 - 特征工程】菜菜sklearn机器学习

课程地址:《菜菜的机器学习sklearn课堂》_哔哩哔哩_bilibili 第一期:sklearn入门 & 决策树在sklearn中的实现第二期:随机森林在sklearn中的实现第三期:sklearn中的数据预处理和特征工程第四期:sklearn中的降维算法…

Blog Navigation

Blog Navigation Linux Kernel 0x01_LinuxKernel_内核的启动(一)之启动前准备[2022-7-5]0x02_LinuxKernel_内核的启动(二)SMP多核处理器启动过程分析 [TODO]0x21_LinuxKernel_内核活动(一)之系统调用 [20…

【OpenGL学习】OpenGL窗口创建

OpenGL窗口创建 本节介绍如何在利用配置好的GLFW和GLAD进行一个简单窗口的绘制,首先明白在OpenGL中进行图形绘制到窗口的整个流程: 初始化GLFW创建窗口window创建OpenGL上下文初始化Glad渲染循环结束绘制 初始化GLFW 然后我们从上面的流程逐步进行窗…

知微传感3D相机SDK开发文档一查找相机

知微传感3D相机SDK开发文档一查找相机 主要对知微传感3D相机的SDK文件做一个介绍,大家一个界面显示程序包含图像的获得,相机的查找和链接 查找相机,通过UDP广播形式查找局域网相机链接相机,通过IP地址链接局域网内的相机获取图片&…

如何提升计算机的运行速度-正确清理C盘的方法

本文是向大家介绍清理C盘的方法,它能够实现给系统盘瘦身,能够带来提升计算机运行速度价值。提升计算机的运行速度-清理C盘的方法1 利用Windows附带的磁盘清理工具鼠标右击【C盘】选择【属性】选择【磁盘清理】勾选需要清理的文件,点击【确定】…

2023 hgame --- week1 wp

文章目录Miscsign ine99p1ant_want_girlfriend神秘的海报Where am IWebClassic Childhood GameBecome A MemberGuess Who I AmShow Me Your BeautyCryptoRSABe Stream神秘的电话兔兔的车票Retest_your_IDAeasyasmencodeeasyenca_cup_of_teaPwntest_nciotHelp the uncle who can…

【阶段三】Python机器学习29篇:机器学习项目实战:DBSCAN算法的基本原理与DBCSAN新闻聚类分群模型

本篇的思维导图: DBSCAN模型 DBSCAN(全称为Density-Based Spatial Clustering of Applications with Noise)是一种以密度为基础的空间聚类算法,可以用密度的概念剔除不属于任一类别的噪声点。该算法将簇定义为密度相连的点的最大集合,将具有足够密度的区域划分为…

rabbitmq命令大全

大家好,我是早九晚十二,目前是做运维相关的工作。写博客是为了积累,希望大家一起进步! 我的主页:早九晚十二 文章目录服务管理启动服务后台启动查看状态用户管理新增账号删除用户所有用户:修改密码:清除密码角色管理设…