博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java 基础语法
阅读量:97 次
发布时间:2019-02-25

本文共 3840 字,大约阅读时间需要 12 分钟。

文章目录

前言

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

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

:类是一个模板,它描述一类对象的行为和状态。
方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。


一、基础语法

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

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

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

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

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

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


**第一个Java程序** 在桌面新建记事本,复制粘贴下边的代码,点击保存后重命名文件为HelloWord.java 下面看一个简单的 Java 程序,它将输出字符串 Hello World ```java public class HelloWorld { /* 第一个Java程序 * 它将输出字符串 Hello World */ public static void main(String[] args) { System.out.println("Hello World"); // 输出 Hello World } } ```

在这里插入图片描述

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

  1. 打开代码编辑器,把上面的代码添加进去;
  2. 打开代码编辑器,把上面的代码添加进去;
  3. 把文件名保存为:HelloWorld.java;
  4. 打开 cmd 命令窗口,进入目标文件所在的位置,假设是 C:\
  5. 在命令行窗口输入 javac HelloWorld.java 按下回车键编译代码。如果代码没有错误,cmd命令提示符会进入下一行(假设环境变量都设置好了)。
  6. 再键输入 java HelloWorld 按下回车键就可以运行程序了
$ javac HelloWorld.java$ java HelloWorld Hello World

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

javac -encoding UTF-8 HelloWorld.java   //设置字符编码为UTF-8java HelloWorld

二、Java 标识符

标识符是什么:

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

注意事项:

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

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

命名原则:见名知意

  • 包名:全部小写,多级包用.隔开。 举例:com.jourwon
  • 类、接口:一个单词首字母大写,多个单词每个单词的首字母大写。 举例:Student,Car,HelloWorld
  • 方法和变量:一个单词首字母小写,多个单词从第二个单词开始每个单词的首字母大写。 举例:age,maxAge,show(),getAge()
  • 常量:如果是一个单词,所有字母大写,如果是多个单词,所有的单词大写,用下划线区分每个单词。举例:DATE,MAX_AGE
  • 项目名:全部用小写字母,多个单词之间用横杆-分割。 举例:demo,spring-boot

三、Java修饰符

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

  • 访问控制修饰符 : default, protected, public , private
    1、default (即缺省,什么也不写,不使用任何关键字): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。
    2、protected : 对同一包内的类和所有子类可见。使用对象:变量、方法。 注意:不能修饰类(外部类)。
    3、public : 对所有类可见。使用对象:类、接口、变量、方法
    作用:Private 访问修饰符的使用主要用来隐藏类的实现细节和保护类的数据。
    4、 private : 在同一类内可见。使用对象:变量、方法。 注意:不能修饰类(外部类)

访问权限:

访问权限比较

  • 非访问控制修饰符 : static,final, abstract, synchronized

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

    2、final 修饰符,用来修饰类、方法和变量,final 修饰的类不能够被继承,修饰的方法不能被继承类重新定义,修饰的变量为常量,是不可修改的
    3、abstract 修饰符,用来创建抽象类和抽象方法。
    4、synchronized 和 volatile 修饰符,主要用于线程的编程。

四、

在这里插入图片描述

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

  1. 局部变量 ,类的方法内的变量。
  2. 类变量(静态变量) ,独立于方法之外的变量,用 static 修饰。
  3. 成员变量(非静态变量),指这个类的变量,独立于方法之外的变量,不过没有 static 修饰。
public class Variable{
static int allClicks=0; // 类变量 String str="hello world"; // 成员变量 public void method(){
int i =0; // 局部变量 }}

五、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 关键字。这些保留字不能用于常量、变量、和任何标识符的名称。

  • 访问控制型关键字
    在这里插入图片描述
  • 类、方法和变量修饰符关键字
  • 程序控制语句
    在这里插入图片描述
  • 错误处理
    在这里插入图片描述
  • 包相关
    在这里插入图片描述
  • 基本类型
    在这里插入图片描述
  • 变量引用
    在这里插入图片描述
  • 保留关键字
    在这里插入图片描述

八、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 源程序与编译型运行区别

如下图所示:

在这里插入图片描述

转载地址:http://rrp.baihongyu.com/

你可能感兴趣的文章