java语法基础

1. 变量和基本数据类型

数据类型定义:一组数值和定义在数值上的操作。

1.1 8种基本数据类型

  • 1.整数
    • byte (1 byte): -128 ~ +127
    • short (2 bytes): -32768 ~ +32767
    • int (4 bytes): -2147438648 ~ +2147438647
    • long (8 bytes)
    • unsigned byte (1 byte): 0 ~ 255
    • unsigned short (2 bytes): 0 ~ 0~65535
    • unsigned int (4 bytes): 0~4294967295
    • unsigned long (8 bytes)
  • 2.浮点数
    • float (4 bytes): 3.4E-38 - 3.4E+38
      • 精度: 8, 23
    • double (8 bytes): 1.7E-308 ------ 1.7E+308
      • 精度: 11, 52
  • 3.字符
    • char
      ‘1’, ‘2’, ‘a’, ‘%’
  • 4.boolean 类型
    • true
    • false

1.2 操作符

优先级:单目运算高于双目运算,数学运算>关系运算>逻辑运算,赋值运算最低。有印象即可,不清楚的用()解决一起

  • +: int a = 1 + 5;
  • - : long b = 3 - 5;
  • * : long c = 5 * 4;
  • / : unsigned d = 15 / 3;
  • % : unsigned e = 5 % 3;
  • >, <, >=, <=, ==
  • bool

1.3 数组

  • 格式
 int array[100];
 int [] array = new int[100];
 array[0] = 5;
 int length = array.length();
 int[] arr = {11, 22, 33, 44, 55}

2.表达式和赋值

  • 1.基本的数学计算
 “1 + 2”, “3 / 5”, “3 > 5”, “1 == 2”

每个表达式都有⼀个返回值

  • 2.⽅法调⽤
“sqrt(1)”, “dog.walk()”

⽅法调⽤可以有返回值,也可以没有返回值 (或者说是返回值为空 void)。表达式和语句都以 “;” 表示结束

3. 控制语句

3.1 逻辑控制语句

  • if
if (condition) { action; }
  • if … else …
 if (condition) { action1; } else { action2; }
  • 代码块
    • 使⽤ “{}” 包括起来的单个或者多个语句或表达式

3.2 循环和控制语句

  • for
for (initial; condition; iteration) {}
for (T iterator : Collection<T>) {}     // 增强for循环
  • while
while (condition) {}
  • 执⾏控制语句
return <返回值>: 从⽅法中返回
break: 退出当前循环,即退出整个循环
continue: 跳出当前循环,执行下次循环
throw: 抛出异常
  • 构造语句
    • new: ⽣成⼀个对象
      • Integer a = new Integer(3);

4. java方法

  • 格式:
  <返回类型> ⽅法名(<参数类型> 参数名, …) 
      {代码; return <返回值>;}
  • ⼀个⽅法由 “⽅法名 + 参数类型” 确定,即方法签名
  • 重载:
  • 相同⽅法名,不同参数类型, 是不同的⽅法 (重载override)。即方法名相同,参数列表不同(参数个数或参数类型不同),与返回值类型无关

注意:java的方法是平级的,不可嵌套定义,一个方法不可以做为另外一个方法的参数。

5. JAVA类型模型

5.1 基本概念

  • 类:类是⼀个模板,它描述⼀类对象的⾏为和状态
    • 语义上表达的是⼀类实体(对象)的抽象
  • 对象:对象是类的⼀个实例,有具体的状态
    • 语义上是表达⼀个java类的实体
  • Java⾥的常量和变量都可以对应于⼀个对象,这个对象的⾏为和具有的属性是由类来定义的
  • Java程序的基本结构就是⼀系列类的定义,类之间的关系和具体类的对象之间的互相操作

5.2 类

  • 注意:
    • 在Java中的惯例是⼀个⽂件中存放⼀个public类,文件名与类名相同
    • 格式
    class Person {
      String name;
      int age;
      
      public void speak(){
        System.out.println("speak English");
      }
    }
    

5.3 对象

  • 对象是⼀般情况下Java语⾔⾥的”⼀等公⺠”
  • 对象可以赋值到⼀个变量
    • 对象是通过new语句进⾏创建
Person p = new Person();

5.4 JAVA⽅法和成员变量

  • 成员变量:类中定义的该类的实例对象所具有的状态,其作⽤域在类中,或对象中
  • 成员⽅法:类中定义的该类的实例对象所具有的⾏为,用来操作成员变量
  • 静态⽅法: ⾪属于类本身的⽅法

5.5 权限修饰符

  • 修饰符⽤于控制变量, 类 的作⽤域和⼀些访问限制
  • 访问权限修饰符: public, protected, private, default(即不设置)
权限修饰符 同一个类 同一个包 不同包的子类 不同包的非子类
Private
Default
Protected
Public

5.6 状态修饰符

  • static: 把⽅法或者成员变量设置为类共享,具有static修饰的⽅法和变量的类, 我们称之为”静态类”
  • final
    • final <类>; —> 防⽌类被继承
    • final <变量>; —> 防⽌变量被修改引⽤到另外⼀个对象, 可称为 “常量”
    • final <⽅法>; —> 防⽌⽅法被重载(override)

6. 包和层次结构

  • 为什么要有包
    • 将字节码(.class)进行分类存放,包其实就是文件夹
  • 好处
    • 方便管理类,避免一个文件夹中有太多的类难以管理。
    • “包”: ⽤来表示具有层次结构的命名空间,防止重复类名出现冲突
  • 定义包的格式
    package 包名;
    
  • 定义包的注意事项
    • package语句必须是程序的第一条可执行的代码
    • package语句在一个java文件中只能有一个
    • 如果没有package,默认表示无包名
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,794评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,050评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,587评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,861评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,901评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,898评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,832评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,617评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,077评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,349评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,483评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,199评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,824评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,442评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,632评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,474评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,393评论 2 352

推荐阅读更多精彩内容