Java语法规范
java 是面向对象的编程语言,一个java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。下面简要介绍一下类,对象,方法和实例变量的概念。
- 对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色,名字,品种;行为有:摇尾巴,叫,吃等。
- 类:类是一个模版,它描述一类对象的行为和状态。
- 方法:方法就是行为,一个类可以有多个方法。逻辑运算,数据修改以及所有行为都是在方法中完成的。
- 实例对象:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。
基础语法
编写java程序的时候,应注意一下几点:
-
大小写敏感:java是大小写敏感的,这就意味着标识符Hello与hello是不同的。
-
类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母都要大写,例如:HelloWorld。
-
方法名:所有的方法名的首字母小写开头,如果由若干字母组成,那么每个后面每个首字母都要写大写,例如:printDefalutValue.
-
源文件名:源文件名必须和类名相同。
-
主方法入口:所有的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,static,synchronized
在后面的章节中我们会深入讨论java修饰符。
Java变量
Java中主要有如下几种类型的变量
- 局部变量
- 类变量(静态变量)
- 成员变量(非静态变量)(实例变量)
Java数组
数组是存储堆上的对象,可以保存多个同类型变量。
举例几个例子:
//定义int数组
int [] intarr=new int[]{1,2,3,4,5};//第一种方法,这是完整的
int [] intarr2={1,2,3,4,5};//这是简略版的
//定义其他是一个的
Java关键字
下面列出了 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注释
类似于 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 8及以上版本允许 default 和 static 方法有具体实现)。
- 一个类通过
implements
关键字实现接口。 - 一个类可以实现多个接口,支持多重继承。
- 接口中的所有方法默认是
public
和abstract
,所有属性默认是public static final
。
实例:
interface Animal {
int a=3;//所有属性默认是public static final
void eat(); // 抽象方法
void sound(); // 抽象方法
}//默认的修饰是public和abstract,
抽象类
- 抽象类是包含抽象方法(没有实现)和具体方法(有实现)的一种类。
- 使用
abstract
关键字来声明抽象类和抽象方法。 - 一个类只能继承一个抽象类(单继承),但可以实现多个接口。
- 抽象类通常用于共享代码和属性的场景。
实例:
abstract class Animal {
abstract void eat(); // 抽象方法
void sleep() { // 具体方法
System.out.println("Sleeping...");
}
}
抽象方法
- 抽象方法是没有实现的方法,只定义了方法的签名(名称、参数、返回类型)。
- 抽象方法必须在抽象类或接口中声明。
- 继承抽象类或实现接口的子类必须实现所有抽象方法。
实例:
abstract class Animal {
abstract void sound(); // 抽象方法
}
static关键词
- static:
static
关键字用于创建类变量和类方法。被声明为static
的变量或方法属于类而不是类的实例,可以通过类名直接访问,而不需要创建类的实例。
class Example {
static int staticVariable; // 类变量
int instanceVariable; // 实例变量
static void staticMethod() { // 类方法
System.out.println("Static method");
}
void instanceMethod() { // 实例方法
System.out.println("Instance method");
}
}
在Java中,类里面的方法可以不使用任何访问修饰符,称为包私有(package-private)。这意味着,如果没有指定访问修饰符,该方法只能在同一个包内的类中访问。
Java 源程序与编译型运行区别
如下图所示:
标签:Java,变量,方法,规范,接口,语法,实例,static,1java From: https://www.cnblogs.com/positive-boy/p/18402814