Java编程基础

Java程序的构成

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

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

先来看一下Hello World的代码:

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

在这里的 Hello World只涉及了类,方法和语句。该Java程序定义了一个类 HelloWorld,该类的名字与 .java文件的名字相同,其中的main方法是程序的入口,而“打印”这个功能是由一个语句实现,即:System.out.println("Hello World!");
下面两点有关Java的书写方式:

  • Java中的语句要以;结尾
  • 用花括号{}来整合语句,形成程序块。通过程序块,我们可以知道程序的不同部分的范围,比如类从哪里开始,到哪里结束。

Java关键字

Java的关键字是被Java语言赋予了特定含义的单词,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名。
Java关键字有如下表所列,目前共有50个Java关键字,其中“const”和“goto”这两个关键字在Java语言中并没有具体含义:


关键字1.png

关键字2.png

Java标识符

Java语言中,类、变量、常量、方法都需要名字,我们统统称之为Java标识符。
标识符是用来给类、对象、方法、变量、接口和自定义数据类型命名的。
关于Java标识符,有几点需要注意的:

  • Java标识符由数字,大小写字母(Java中是区分大小写的)和下划线(_),美元符号($)组成
  • 所有的标识符都应该以字母、美元符、或者下划线开始,首位不能是数字
  • 关键字不能用作标识符

下面的标识符是合法的:

zhongGuo, Zhong_Guo, $money, _Java_learning, OK, _3th, _3_

下面的标识符是非法的:

#zhongguo, 100years, class, &boy, if

在Java中,还有一些约定成俗的命名规则,希望同学们在写代码的时候都能遵循这些规则:

  • 类和接口名。每个字的首个字母大写,含有大小写。例如:MyClass、HelloWorld、Time等
  • 方法名。首字符小写,其余的首字母大写,含大小写。尽量少用下划线。例如:myName、setTime等。这种命名方法叫做驼峰式命名。
  • 常量名。基本数据类型的常量名使用全部大写字母,字与字之间用下划线分割。对象常量可大小混写。例如:SIZE_NAME。
  • 变量名。可大小写混写,首字符小写,字间分隔符用字的首字母大写。不用下划线,少用美元符号。给变量命名是尽量做到见名知意

命名过程中尽量做到见名知意,方便后期查看和修改代码,也方便其他人员的阅读。

变量和常量

在程序中存在大量的数据来代表程序的状态,其中有些数据在程序的运行过程中会发生改变,有些数据在程序运行过程中值不能发生改变,这些数据在程序中分别被叫做变量和常量。

变量

变量代表程序的状态。程序通过改变变量的值来改变整个程序的状态。为了方便地引用变量的值,在程序中需要为变量设定一个名称,这就是变量名。
由于Java语言是一种强类型的语言,所以变量在使用之前必须首先声明。

语法格式

  • 数据类型 变量名称; 或者 数据类型 变量名称 = 变量值;
    例如:int x =3;
    在该语法格式中,数据类型可以是Java语言中任意的类型,如int,它可以用来不断的存放同一类型的数据,并可以反复使用,变量的类型是固定的,其值是可以被改变的。
  • 演示
public class TestDemo { 
    public static void main(String[] args) {
        //定义一个整数型变量i
        int i = 10;
        System.out.println(i);
        //更改变量i的值
        i = 15;
        System.out.println(i);
    }
}
  • 测试题
// 交换两个变量的值
public class day2 {
    
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        int c;
        System.out.println("交换前的值:a =" + a + ", b =" + b);
        c = a;
        a = b;
        b = c;
        System.out.println("交换后的值:a =" + a + ", b =" + b);
    }
}

变量(variable)占据一定的内存空间。不同类型的变量占据不同的大小。Java中的变量类型如下:
Java数据类型.jpg

定义变量的注意事项

1.作用域

  • 在Java中一对{}就是一个作用域
  • 同一作用域不能使用相同的变量名
  • 当前作用域内定义的变量,只能在当前作用域内使用
  • 演示
    public static void main(String[] args) {
        int a = 1;
        //出现错误,当下面有代码需要使用到变量a的时候, jvm不知道用哪一个
        int a = 2;  
        System.out.println(a);
    }
    

2.初始化值

  • 局部变量在使用之前必须要先赋值
  • 没有具体的值,使用起来没有意义
  • 演示
    public static void main(String[] args) {
        int a;
        //这里会报错, 如果没有值, 操作a是没有意义的
        System.out.println(a);
    }
    

3.一条语句可以定义多个相同类型的变量

  • 演示
    public static void main(String[] args) {
        //只定义变量不赋值
        int a,b,c;
        //定义变量并赋值
        int d =5,f=5;
    }
    

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

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

变量的概念实际上来自于面向过程的编程语言。在Java中,所谓的变量实际上是基本类型(premitive type)

常量

常量代表程序运行过程中不能改变的值。可以理解为特殊的变量,它的值设定后,在程序运行过程中是不可能被改变的。
常量的语法格式和变量类似,只需要在变量的语法格式前面添加关键字final即可。在Java编码规范中,要求常量名必须大写。
常量的语法格式如下:

  • final 数据类型 常量名称 = 值;
  • final 数据类型 常量名称1 = 值1, 常量名称2 = 值2, ...常量名称n = 值n;

例如:

final double PI = 3.14;
final char MALE = 'M', FEMALE = 'F';
final String LOVE = "imooc";

在Java语法中,常量也可以首先声明,然后在进行赋值,但是只能赋值一次,示例代码如下:

final int UP;
UP = 1;

final用于声明属性(常量),方法和类,分别表示属性一旦被分配内存空间就必须初始化,它的含义是“这是无法改变的”或者“终态的”。
程序中,使用常量可以提高代码的可维护性。例如,在项目开发时,我们需要指定用户的性别,此时可以定义一个常量 SEX,赋值为 "男",在需要指定用户性别的地方直接调用此常量即可,避免了由于用户的不规范赋值导致程序出错的情况。

注释

说到注释,在我们写代码的时候,为了方便理解和阅读,往往会在相关的代码附近添加说明文字,也就是我们说的注释。注释是为了防止编译器在编译的时候将我们的注释也一并编译了,导致程序出错,所以在编译的时候,编译器会自动跳过我们编写的注释。
Java的注释格式有三种:

  • 行注释\\:只在当前行起作用
  • 多行注释/*...*/:可以在多行都起作用
  • 文档注释/**...*/:可以标示文档结构,java提供了文档注释扫描工具,可以自动生成文档
    下面是演示:
  • java代码
public class HelloWorld {
    
    /**
     * 获取两个整数中最大的那个
     * @author 标明开发该类模块的作者,可以写多个,生成的文档中会以","号隔开
     * @version 标明该类模块的版本  只能写一次
     * @see 参考转向,也就是相关主题 
     * @param 对方法中某参数的说明 
     * @return 对方法返回值的说明 
     * @exception 对方法可能抛出的异常进行说明
     */
    public static int getMax(int a,int b){
        //比较两个数,将最大整数的赋值给c
        int c = a > b?a:b;
        /*
         * 在注释内容太多的时候, 使用多行注释
         */
        return c;
    }
}
  • dos命令
javadoc HelloWorld.java -d d:\\my
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,542评论 6 504
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,822评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,912评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,449评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,500评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,370评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,193评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,074评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,505评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,722评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,841评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,569评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,168评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,783评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,918评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,962评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,781评论 2 354

推荐阅读更多精彩内容

  • 注释 代码注释是架起程序设计者与程序阅读者之间的通信桥梁,最大限度的提高团队开发合作效率。也是程序代码可维护性的重...
    青貊阅读 307评论 0 0
  • 一、Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计...
    子非鱼_t_阅读 4,186评论 1 44
  • 作者:大鱼 来昆明这么多天,四处漂泊流浪,住过一个又一个青年旅社,想要在青旅认识一群有故事的人,寻找一份温暖,...
    北笔阅读 251评论 0 0
  • 子曰:食、色性也。一部《舌尖上的中国》展示了中国最美的美食,最独特的人文风情,让全球人一领中华美食文化之博大精深,...
    三三先生阅读 866评论 4 7
  • 玉树临风已斑, 看花间, 转眼桃红渐淡改容颜。 岁月限, 人面倦, 相见欢, 十载人事九变话当年。 (附后)...
    王卓族阅读 239评论 0 0