java语法学习笔记

1.Java基础语法

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

  • 对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃灯。
  • 类:类是一个模版,它描述一 对象的行为和状态
  • 方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
  • 实例变量:每个对象都有特殊的实例变量,对象的状态由这些实例变量的值决定。

2.第一个Java程序

实例:

public class HelloWorld {
    public static void main(String []args) {
        System.out.println("Hello World");
    }
}

基本语法:
编写Java程序时,应注意以下几点:

  • 大小写敏感: Java是大小写敏感的,这就意味着标识符Hello 与 hello 是不同的。
  • 类名: 对所有的类来说,类名的首字母应该大些。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass
  • 方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
  • 源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记Java是大小写敏感的),文件名的后缀为.java。(如果文件名和类名不相同则会导致编译错误)。
  • 主方法入口:所有的Java程序由 public static void main (String []args) 方法开始执行。

3.Java标识符

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

  • 标识符都应该以字母(A-Z,a-z),美元符号($)、或者下划线(_)开始
  • 首字符之后可以是字母(A-Z,a-z),美元符号($)、下划线(_)或数字任意字符组合
  • 关键字不能用作标识符
  • 标识符大小写敏感

4.Java修饰符

可以使用修饰符来修饰类中方法和属性

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

5.Java变量

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

6.Java数组

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

7.Java枚举

Java5.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;
      }
}

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

8.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 抛出一个异常对象
    shrows 声明一个异常可能被抛出
    try 捕获异常
  • 基本类型:
    boolean 布尔型
    byte 字节型
    char 字符型
    double 双精度浮点
    float 单精度浮点
    int 整型
    long 长整型
    short 短整型
    null 空
  • 变量引用:
    super 父类,超类
    this 本类
    void 无返回值
  • 保留关键字:
    goto 是关键字,但不能使用
    const 是关键字,但不能使用

9.Java注释,Java 空行,

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

//单行注释
/*单行注释*/
/**
  *多行注释
  */  

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

10.继承

在Java 中,一个类可以由其他类派生,如果你要创建一个类,而且已经存在一个类具有你所需要的属性或方法,那么你可以将新创建的类继承该类。
利用继承的方法,可以重用已存在类的方法和属性,而不用重写这些代码。被继承的类称为超类(super class),派生类称为子类(subclass)

11.接口

在Java中,接口可以理解为对象间相互通信的协议。接口在继承中扮演着很重要的角色。
接口之定义派生要用到的方法,但是方法的的具体实现完全取决于派生类。

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

image.png

13.命名规范

1.项目名全部小写
2.报名全部小写
3.类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写。如:MyFirstClass()
4.变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写。
如:int index = 0;public void toString() {}
5.常量名全部大写
如:public static final String GAME_COLOR = “RED”;
6.所有命名规范必须遵循以下规则:
1.名称只能由字母、数字、下划线、$符号组成
2.不能以数字开头
3.名称不能使用JAVA中的关键字

14.一个完整的Java源程序应该包括下列部分:

  • package语句:该部分之多只有一句,必须放在源程序的第一句。
  • import语句:该部分可以有若干import语句或者没有,必须放在所有的类定义之前
  • public classDefinition:公共定义部分,至多只有一个公共类的定义,Java语言规定该Java源程序的文件名必须与该公共类名完全一致
  • classDefinition:类定义部分,可以有0个或者多个类定义。
  • interfaceDefinition:接口定义部分,可以有0个或者多个接口定义。
    package语句:由于Java编译器为每个类生成一个字节码文件,且文件名与类名相同,因此同名的类有可能发生冲突。为了解决这一问题,Java提供包来管理类名空间,包实际提供了一种命名机制和可见性限制机制。
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,802评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,109评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,683评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,458评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,452评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,505评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,901评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,550评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,763评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,556评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,629评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,330评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,898评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,897评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,140评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,807评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,339评论 2 342

推荐阅读更多精彩内容

  • 一、Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计...
    子非鱼_t_阅读 4,146评论 1 44
  • 秋高气爽哪里耍?天府古镇黄龙溪。 作为2017第四届“天府古镇国际艺术节”的主会场,从元宵节的铁水火龙、端午节的灯...
    艺海鑫宇文化传媒阅读 256评论 0 0
  • 把握时代趋势 马云前段时间一次演讲中提到,人类经历了三次技术革命。第一次技术革命释放了人的体力;第二次技术革命释放...
    Stone319阅读 439评论 0 1
  • 太多沉默化不成最初的的终点 想要去寻找 寻找那份最初的起点 却怎么也找不回最初的那份勇敢 你 回眸一笑 太多悲凉...
    零落666阅读 184评论 0 0
  • 不知道说些什么也不知道该做些什么 有时候感觉自己就像大海里漂浮的羽毛 孤独 你明明身在闹市 喧哗而烦扰 却好像置身...
    仓皇出逃x阅读 144评论 0 0