Java的基础语法包含三大类:标识符、修饰符、关键字。

一、标识符。

定义:标识符是以数字、字母、下划、$符号(美元符)所组成的用来标志类名、对象名、方法名、类型名、数组名、包名的有效字符序列。(简单的说是Java所有组成部分的名字)

命名规则:类名首字母大写、变量名和方法名采用驼峰标志法(驼峰式命名法:简单的说是变量名的单词首字母大写造成的此起彼伏像驼峰一样,又分小驼峰法(如:int myStudentCount)和大驼峰法(如:int MyStudentCount )。小大也就是变量名第一个单词首字母是否大写的区别。),常量全大写,多个单词之间用“_”(英文符号)隔开,包名全小写;

(1)只能由阿拉伯数字、字母、下划线、$符号组成

(2)不能以数字开头

(3)Java语言区分大小写

(4)不能使用Java中的关键字或保留字

二、修饰符

定义:修饰符是用于限定类型以及类型成员(方法或属性等)的声明的一种符号。主要有两类修饰符:访问控制修饰符和非访问控制修饰符。

(1)访问修饰符:访问修饰符是用来控制其他类对该类的类、实例变量、构造方法、实例方法的访问权限。Java有四种分别是public、protected、default(默认)、private。

default: (即缺省,什么也不写): 无访问修饰符,可以被同一包中所有类访问。使用对象:类、接口、变量、方法。

private : 只能够被当前类访问。使用对象:变量、方法。注意:不能修饰类(外部类)

public : 可以被任何类访问。使用对象:类、接口、变量、方法

protected : 可以被同一包内的所有类和所有子类访问。使用对象:变量、方法。 注意:不能修饰类(外部类)

默认访问修饰符-不使用任何关键字

使用默认访问修饰符声明的变量和方法,对同一个包内的类是可见的。接口里的变量都隐式声明为 public static final,而接口里的方法默认情况下访问权限为 public。

私有访问修饰符-private

私有访问修饰符是最严格的访问级别,所以被声明为 private 的方法、变量和构造方法只能被所属类访问,并且类和接口不能声明为 private。

声明为私有访问类型的变量只能通过类中公共的 getter 方法被外部类访问。

公有访问修饰符-public

被声明为 public 的类、方法、构造方法和接口能够被任何其他类访问。

如果几个相互访问的 public 类分布在不同的包中,则需要导入相应 public 类所在的包。由于类的继承性,类所有的公有方法和变量都能被其子类继承。

Java 程序的 main() 方法必须设置成公有的,否则,Java 解释器将不能运行该类。

受保护的访问修饰符-protected

protected 需要从以下两个点来分析说明:

子类与基类在同一包中:被声明为 protected 的变量、方法和构造器能被同一个包中的任何其他类访问;

子类与基类不在同一包中:那么在子类中,子类实例可以访问其从基类继承而来的 protected 方法,而不能访问基类实例的protected方法。

protected 可以修饰数据成员,构造方法,方法成员,不能修饰类(内部类除外)。

接口及接口的成员变量和成员方法不能声明为 protected。

访问控制和继承

请注意以下方法继承的规则:

父类中声明为 public 的方法在子类中也必须为 public。

父类中声明为 protected 的方法在子类中要么声明为 protected,要么声明为 public,不能声明为 private。

父类中声明为 private 的方法,不能够被继承。

非访问修饰符

为了实现一些其他的功能,Java 也提供了许多非访问修饰符。

static 修饰符,用来修饰类方法和类变量。

final 修饰符,用来修饰类、方法和变量,final 修饰的类不能够被继承,修饰的方法不能被继承类重新定义,修饰的变量为常量,是不可修改的。

abstract 修饰符,用来创建抽象类和抽象方法。

synchronized 和volatile 修饰符,主要用于线程的编程

三、关键字

三、关键字

下面列出了 Java 关键字。这些保留字不能用于常量、变量、和任何标识符的名称。

类别关键字说明

访问控制

private

私有的

protected

受保护的

public

公共的

类、方法和变量修饰符

abstract

声明抽象

class

extends

扩充,继承

final

最终值,不可改变的

implements

实现(接口)

interface

接口

native

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

new

新,创建

static

静态

strictfp

严格,精准

synchronized

线程,同步

transient

短暂

volatile

易失

程序控制语句

break

跳出循环

case

定义一个值以供 switch 选择

continue

继续

default

默认

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

是关键字,但不能使用

null

Java是有法_Java基础语法相关推荐

  1. java方法四要素_Java基础语法

    Free Talk 最近在JavaGuide博客里面兜兜转转了几天,一边等华为的实训消息,一边随便看点Java后端开发的知识.但是这一周总感觉看了就忘,而且光看也很容易走神发呆,要不然就是去打王者啥的 ...

  2. java 数组下标 变量_Java基础语法:数组

    一.简介 描述: 数组是相同类型数据的有序集合. 其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们. 基本特点: 数组的长度是确定的.数组一旦被创建,它的大小就是不可以改变的. ...

  3. java default修饰符_Java基础语法二

    Java循环结构 for循环 /* for(初始化;布尔表达式;更新) {执行代码 } */ for(int i=0; i < 5; i++) {System.out.println(i); } ...

  4. java大括号定义数组_Java基础语法_数组

    数组的概念 数组的概念:是一种容器,可以同时存放多个数据值 数组的特点: 1.数组是一种引用数据类型 2.数组当中的多个数据,类型必须统一 3.数组的长幅在程序运行期间不可改变 数组的定义格式 数组的 ...

  5. java中和char功能相反的是_JAVA基础语法

    java的基础语法 Java中的程序可分为结构定义语句和功能执行语句. 结构定义语句:用于声明一个类或方法,功能执行语句用于实现具体的功能. 功能执行语句:每条功能执行语句的结尾都必须用英文分号(;) ...

  6. JAVA运算的类型兼容原则_Java基础语法回顾(一)

    Java基础语法 Java规范 image.png Java字节码 java程序是以".java"为扩展名,当我们编写完java程序后,要执行程序需要经过两个阶段:编译和运行. 编 ...

  7. java 基本语法与流程控制_Java基础语法之控制流程

    Java基础语法之控制流程 语言的流程控制提供了对程序步骤的基本方法. 三大流程控制语句:顺序.选择.循环 复合结构 复合结构是以一个区块为单位的,由"{"开始"}&qu ...

  8. java简述标识符和保留字区别_Java 基础语法 - 流年似水莫停留的个人页面 - OSCHINA - 中文开源技术交流社区...

    Java 基础语法 一个Java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作.下面简要介绍下类.对象.方法和实例变量的概念. 对象:对象是类的一个实例,有状态和行为.例如,一 ...

  9. java 多线程语法_Java基础语法之多线程学习笔记整理

    众所周知,利用好多线程机制,可以大大提高系统整体的并发能力以及性能,而且线程间的切换和调度的成本小.因此,多线程是Java学习者必须掌握的语法重点.本文为大家整理了进程和线程.实现多线程方式.设置和获 ...

最新文章

  1. 负载均衡Load Balance学习
  2. 牛客 - Subset of Five(背包)
  3. SpringSecurity权限框架实战
  4. 第二十五章补充内容 5 不能为0的变量
  5. [vue] vue性能的优化的方法有哪些?
  6. Kotlin 势必取代 Java?
  7. 有关科学计算方面的python解决
  8. 哪种存储器是非易失的_ROM是易失性存储器还是非易事性存储器?
  9. 源支付源码客户端+云端+监控+协议三网免挂免输入(全套版)
  10. spark学习之sparksql语法优化
  11. 领导力提升的科学:如何提升领导力?
  12. LaTeX升级打怪路之自定义指令篇1
  13. 用户、巨头、计算平台,最终都是“社交”的傀儡?
  14. 如何用Nuxt.js构建项目,SSR官网项目搭建流程
  15. The type 类名 is already defined
  16. SQL教程之作为 SQL 数据分析师给初学者的5个技巧提升
  17. PowerShell 7.1 中的新增功能
  18. 回溯法——回溯法的算法思想
  19. 有Go语言实战培训班吗?go语言开发环境搭建
  20. 2022最新树莓派4B学习笔记:系统备份 OpenCV SPI TFT HTML

热门文章

  1. 使用万能框架HttpHelper抓取安卓APP数据
  2. 2015年关注的技术书籍
  3. dockerHub登录失败
  4. 希沃展台如何使用_展商该如何做好展台设计?
  5. java char 计算_经典Java面试题之Java中Char类型的运算
  6. Spket在Eclipse/MyEclipse下的安装和配置支持Ext(图文教程)
  7. ES6的Promise -- 逻辑执行的顺序
  8. python3学习日志Gui编程
  9. elfutils cc1: all warnings being treated as errors
  10. HTML5缓存和GPS定位