java基础语法实例教程_Java 基础语法

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

面向对象中的一些概念

下表列出了 面向对象 编程中的一些概念

名词

说明

对象

对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等

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

方法

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

实例变量

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

第一个Java程序

下面看一个简单的Java程序,它将打印字符串 Hello World

public class HelloWorld {

/* 第一个Java程序

* 它将打印字符串 Hello World

*/

public static void main(String []args) {

System.out.println("Hello World"); // 打印 Hello World

}

}

下面将逐步介绍如何保存、编译以及运行这个程序:

打开 Notepad,把上面的代码添加进去;

把文件名保存为:HelloWorld.java;

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

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

再键入java HelloWorld 按下Enter键就可以运行程序了

你将会在窗口看到 Hello World

C : > javac HelloWorld.java

C : > java HelloWorld

Hello World

基本语法

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

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

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

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

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

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

Java 标识符

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

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

所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始

首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的任何字符组合

关键字不能用作标识符

标识符是大小写敏感的

合法标识符举例:age、$salary、_value、__1_value

非法标识符举例:123abc、-salary

Java 修饰符

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

访问控制修饰符 : default, public , protected, private

非访问控制修饰符 : final, abstract, strictfp

Java 变量

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

局部变量

类变量(静态变量)

成员变量(非静态变量)

Java 数组

数组是储存在堆上的对象,可以保存多个同类型变量

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 ;

}

}

注意:

枚举可以单独声明或者声明在类里面

方法、变量、构造函数也可以在枚举中定义

Java 关键字

下面列出了 Java 保留字

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

关键字

描述

abstract

抽象方法,抽象类的修饰符

assert

断言条件是否满足

boolean

布尔数据类型

break

跳出循环或者label代码段

byte

8-bit 有符号数据类型

case

switch语句的一个条件

catch

和try搭配捕捉异常信息

char

16-bit Unicode字符数据类型

class

定义类

const

未使用

continue

不执行循环体剩余部分

default

switch语句中的默认分支

do

循环语句,循环体至少会执行一次

double

64-bit双精度浮点数

else

if条件不成立时执行的分支

enum

枚举类型

extends

表示一个类是另一个类的子类

final

表示一个值在初始化之后就不能再改变了表示方法不能被重写,或者一个类不能有子类

finally

为了完成执行的代码而设计的,主要是为了程序的健壮性和完整性,无论有没有异常发生都执行代码。

float

32-bit单精度浮点数

for

for循环语句

goto

未使用

if

条件语句

implements

表示一个类实现了接口

import

导入类

instanceof

测试一个对象是否是某个类的实例

int

32位整型数

interface

接口,一种抽象的类型,仅有方法和常量的定义

long

64位整型数

native

表示方法用非java代码实现

new

分配新的类实例

package

一系列相关类组成一个包

private

表示私有字段,或者方法等,只能从类内部访问

protected

表示字段只能通过类或者其子类访问子类或者在同一个包内的其他类

public

表示共有属性或者方法

return

方法返回值

short

16位数字

static

表示在类级别定义,所有实例共享的

strictfp

浮点数比较使用严格的规则

super

表示基类

switch

选择语句

synchronized

表示同一时间只能由一个线程访问的代码块

this

表示调用当前实例或者调用另一个构造函数

throw

抛出异常

throws

定义方法可能抛出的异常

transient

修饰不要序列化的字段

try

表示代码块要做异常处理或者和finally配合表示是否抛出异常都执行finally中的代码

void

标记方法不返回任何值

volatile

标记字段可能会被多个线程同时访问,而不做同步

while

while循环

Java注释

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

public class HelloWorld {

/* 这是第一个Java程序

* 它将打印 Hello World

* 这是一个多行注释的示例

*/

public static void main(String []args){

// 这是单行注释的示例

/* 这个也是单行注释的示例 */

System.out.println("Hello World");

}

}

Java 空行

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

继承

Java 中,一个类可以由其他类派生

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

利用继承的方法,可以重用已存在类的方法和属性,而不用重写这些代码

被继承的类称为超类(super class),派生类称为子类 ( subclass )

接口

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

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

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

解释起来有点拗口,直接看图吧

java_syntax_2.png

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

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

相关文章

python3软件怎么使用_python3怎么使用pip

pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。目前如果你在 python.org 下载最新版本的安装包,则是已经自带了该工具。Python 2.7.9 或 Python 3.4 以上版本都自带 pip 工具。pip 官网:https://pypi.o…

深度学习图像融合_基于深度学习的图像超分辨率最新进展与趋势【附PDF】

因PDF资源在微信公众号关注公众号:人工智能前沿讲习回复“超分辨”获取文章PDF1、主题简介图像超分辨率是计算机视觉和图像处理领域一个非常重要的研究问题,在医疗图像分析、生物特征识别、视频监控与安全等实际场景中有着广泛的应用。随着深度学习技术的…

高通cpu排行_安卓手机芯片排行:麒麟990 5G仅排第三,980还输给了765G?

众所周知,在移动端芯片行业,高通多年来都保持着一种舍我其谁的劲头,但随着科技的不断发展,其他厂商也开辟了自己的新天地,截至目前,全球主流的智能手机搭载的处理器主要来自于华为海思、高通骁龙、三星、联…

keil4怎么移植其他人的程序_简单和你聊聊造血干细胞移植!

造血干细胞是个什么“鸟”?造血干细胞,人体血细胞的老祖宗。它的分裂方式也十分独特,由一个细胞分裂为两个细胞时,其中一个细胞会慢慢长大,增殖分化为红细胞、白细胞和血小板等等;另一个细胞仍然保持干细胞…

怎么在电脑上任意截屏_草地上打滚、墙上任意涂鸦,幼儿园让孩子“想怎么玩就怎么玩”...

(图为孩子们开心地在“山坡”上打滚。 学校供图)长江日报-长江网10月26日讯 10月26日,汉阳区玉龙幼儿园的孩子们冲上小山坡滑草,草地上打滚,滚筒里钻来钻去,墙上任意涂鸦,在梯子搭建的木桥上自由行走……孩子们自发地三…

pyaudio usb playback_苹果安卓手机充电器USB接口PSD源文件psd素材

分类:详情页类目:数码家电格式:psd体积:尺寸:790*12168编号:13182638软件: Photoshop CS6(.psd)颜色模式 : RGB图像类型:位图版权:独家版权LOGO/ 实景图/人物/字体/产品 …

horizon client 无法识别域_iText for Mac(OCR识别图中文字工具)

itext mac中文特别版是一款从图片中识别文字的OCR(光学字符识别)工具。通过截图、拖拽图片,即可以从扫描版的PDF等任意图片中识字,并且可以很好的解决摘抄和批注需求。而且itext mac版使用腾讯、Google 双引擎,识别效果惊人地准确。iText for…

mysql 操作表的例子,mysql中库和表的简单操作总结(附示例)

本篇文章给大家带来的内容是关于mysql中库和表的简单操作总结(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。一. 库的操作1.创建数据库创建数据库:create database 库名 charset utf8; charset uft8 可选项1.2 数据…

.net 5 正式版_iOS14.1正式版和14.2 Beta 4测试版一同发布 附16张内置新壁纸下载

今天凌晨,苹果同时推送了 iOS 14.1 正式版 和 iOS 14.2 Beta 4 测试版 系统更新,对于正式版和开发者用户来说,今天均可以将手中的 iPhone 升级到最新的系统版本。iOS 14.1 正式版更新了什么?先来看下 iOS 14.1 正式版,…

自适应均衡器 matlab程序,基于lms自适应均衡器matlab仿真

基于lms自适应均衡器matlab仿真 毕 业 设 计 (2014 届) 题 目 一种基于 OpenCV 的摄像机标定方 法学 院 物理电气信息学院 专 业 电子信息工程 年 级 2010 学生学号 12010245348 学生姓名 李 鑫 指导教师 车 进 2014 年 5 月 6 日摘要摄像机标定是在机器视觉和工业测量等领域中…

bloomberg用法 固定收益_干货 | 日语高考高频考点:助词を的用法

在日语高考题中,第二大题综合知识运用板块,16-20题固定考察日语的助词的使用。很多同学反映说:高考日语最难学的部分就是助词了。因为中文的结构中是没有助词成分,同时助词的用法也挺多,所以经常容易搞混。日语是黏着语…

php+new+mysqli+utf+8,MySQL和PHP:utf-8带有西里尔字符

HUH函数你在这里混合API,mysql_*和mysqli_*不会混在一起。你应该坚持mysqli_(看起来你无论如何都是),mysql_*函数被弃用,并在PHP 7中完全删除。你的实际问题是某个地方的字符集问题。这里有几个指针,可以帮助您为您的应用程序获得…

arduinojson 转 string_安德胜工作室发来本周五嗨唱转起来第二季首秀的嘉宾剧透...

湖南卫视全民音乐综艺互动秀《嗨唱转起来2》10月2日超燃回归,在金秋十月为观众带来新一季的惊喜。近日,官方微博官宣大玩家阵容:“太阳女神”谢娜、“节奏先生”潘玮柏、“行走的造梗机”大张伟。她是热情女神,点燃全场&#xff0…

二元置信椭圆r语言_r语言二元期权barrier option实现案例

原文链接:http://tecdat.cn/?p4051​tecdat.cnDouble-no-touch(DNT)选项是二元期权,在到期时支付固定金额的现金。我们将展示两种不同的方式来定价包含两种不同定价方法的DNT。​​​首先,我们将尝试使用正常参数&…

vscode emmet默认模板_从零开始配置 vscode

我们在进行开发工作时,选择一个顺手好用的编辑器是必不可免的, 其中 vscode 就是一个很好的选择。它能让你大部分的工作都在编辑器内完成, 大大的提高开发效率~概述vscode 内置了前端相关的基础环境,如emmet扩展。另外的环境则可以通过它自己的插件商城来…

djano 字段不重复_Java 14 发布了,不使用quot;classquot;也能定义类了?还顺手要干掉Lombok!...

2020年3月17日发布,Java正式发布了JDK 14 ,目前已经可以开放下载。在JDK 14中,共有16个新特性,本文主要来介绍其中的一个特性:JEP 359: Records官方吐槽最为致命早在2019年2月份,Java 语言架构师 Brian Goe…

java队列_java集合入门和深入学习(详解),看这篇就差不多了

一、集合入门总结集合框架:Java中的集合框架大类可分为Collection和Map;两者的区别:1、Collection是单列集合;Map是双列集合2、Collection中只有Set系列要求元素唯一;Map中键需要唯一,值可以重复3、Collect…

oracle课程小结,Oracle 数据库优化实战心得总结

一般情况下,对于频繁访问但是不频繁修改的数据,内部设计应当物理不规范化;对于频繁修改但并不频繁访问的数据,内部设计应当物理规范化。3.充分利用内存,优化sga、pga等(11g已经实现了sgapga自动化,但有的时…

苹果公司的企业文化_百度、苹果、脉脉等互联网大厂的企业文化衫还能这么潮?...

转眼2020年就已经到年中啦,很多企业已经敲锣打鼓,筹备着年中的会议团建了,有趣的,好玩的,有创意的,体面的,大场面的,国际范儿的,到底怎么样的年中策划才是最NICE的呢&…

命名空间跟作用域是什么关系_魏如萱许光汉首次合唱新歌《什么跟什么有什么关系》_娱乐频道...

近日,许光汉与新晋金曲奖歌后魏如萱合作的最新单曲《什么跟什么有什么关系》已经上线。歌曲由金曲奖最佳作词人李焯雄作词,魏如萱作曲,陈建骐担当制作,魏如萱和许光汉共同演唱。单曲收录于十一音乐的年度限定合作企划“不完美人生…