JAVA——从基础学起(一)Java语言基础

一 Java语言基础

1.1Java主类结构

(1)Java是面向对象的编程语言,基本组成单元是类,类体中包括属性和方法两部分。每个应用程序都需要含有一个main方法,含有main方法的类叫做主类。

package com.mw
public class First{
       static String s1 = "你好Java。"; 
       public static void main(String [] args){
       String s2 = "我是MW.";
       System.out.println(s1 + s2);
}
}

(2)局部变量和成员变量
将类的属性称作为全局变量或成员变量,将方法中的属性称为局部变量。

1.2 基本数据类型

1.2.1 整数类型 (int byte short long)
用于存储整数值。八进制整数值须以0开头,十进制整数值不能以0开头,十六进制整数值须以0x开头。如:

int a = 10002;
int b = 0123;
int c = 0x25bc

1.2.2 浮点类型(float double)

1.2.3 字符类型
(1)char 型,用于存储单个字符,占用16位两字节空间(java使用Unicode编码),定义chair型变量时使用单引号 ‘ ’。
如:

char ch1 = 'a';
char ch2 = 97;

(2)转义字符,是一种特殊的字符变量,以 “ \ ”开头,后跟一个或多个字符。

转义字符 含义
\ddd 1-3位八进制数据所表示的字符,如\123
\udddd 1-4位十六进制数据所表示的字符,如\u1234
\’ 表示单引号‘
\\ 表示反斜杠字符\
\t 垂直制表符
\r 回车
\n 换行
\b 退格
\f 换页
char ch1 = '\\';
char ch2 = '\u4562'

1.2.4 布尔类型
boolean 类型的取值只有true 和 false

1.3常量与变量

程序执行过程中值不能改变的量叫做常量,可以改变的量叫做变量

1.3.1 标识符和关键字
(1)标识符:Java规定标识符由字母,下划线_,$和数字组成。第一个字符不能是数字且标识符不能是Java中的保留关键字。标识符严格区分大小写。
(2)关键字:是Java中已经被富赋予特定意义的单词,如 int ,boolean ,interface ,instanceof 等

1.3.2 声明变量

char ch ;
int a = 4 ;

1.3.3 声明常量
通常被称为final变量,在整个程序中只能被赋值一次,再次改变final变量的值编译器会报错。一般来说,常量值通常使用大写形式的单词定义:

final int ELEMENT_NOT_FOUND = 0;
static final int OUT_OF_BOUNCE = 0;

当final变量是成员变量时,需要在定义时就赋予初值。

1.3.4 变量的有效范围
指程序代码能够访问该变量的区域。
(1)成员变量:在整个类中有效

public class Test{
       int x = 45 ;
       static int y = 55 ;
}

x称为实例变量,y称为静态变量。静态变量由static关键词修饰,有效范围可以跨类,甚至可以达到整个应用程序范围之内。

(2)局部变量:在方法中声明的变量,包括方法参数,只在当前的代码块中有效。
局部变量的生命周期取决于方法,当方法被调用时,JVM为方法中的局部变量分配内存空间,方法调用结束,则内存空间被收回,该局部变量被销毁。

class Test2{
      int i = 2 ;
      public void testNum(){
             int i = 5;
             System.out.println(i);
      }
}

输出的i应为5,在方法内外声明标识符相同的变量时,方法外的变量相对于方法内的变量不可见,故成员变量 i 在testNum方法内无效。

1.4 运算符

1.4.1 赋值运算符 =
是二元运算符,处理时先取得右方表达式处理后的结果,复制给左边的表达式。因此运算顺序为从右到左。

1.4.2 算术运算符 + - * / %
注意,取余运算符只能应用于整型。

1.4.3 自增和自减运算符
是单目运算符,可以放在操作元前后
i--或i++ 表示先参与运算,再自增或自减
++i或--i表示先自增或自减,再参与运算

1.4.4 比较运算符 >,<,>=,<=,== ,!=
是二元运算符,比较运算符的运算结果是boolean型。

1.4.5 逻辑运算符 &&,&;||;!
注意:&&与运算符具有短路性质,而&具有非短路性质

1.4.6 位运算符 &,|,~,^,>>,<<,>>>
注意:移位运算符通常用于实现乘以或除以2^n的效果,由于计算机中数据是按照二进制代码形式存储,因此移位操作比乘法操作要节省时间。
如下面代码相当于实现1.5*Capacity的操作:

int Capacity += Capacity << 1 ;

1.4.7 三元运算符 a?b:c
一般用于简易判断,如取代if…else…流程

1.4.8 运算符优先级
(1)增量和减量运算
(2)算术运算
(3)比较运算
(4)逻辑运算
(5)赋值运算

1.5 数据类型转换

1.5.1 隐式类型转换
由低级类型向高级类型转换,由系统自动执行,不包括逻辑类型和字符类型。
byte

1.5.2 显式类型转换
当高精度的值赋给低精度的变量,发生显式类型转换,不过可能会导致精度损失。除boolean类型之外所有基本数据类型都可以进行显式类型转换。

int a ;
double b = 1.63;
a = (int) b;

当给一个变量赋值时,复制不可超过该变量可表示的数据的范围,否则需要进行显式类型转换

byte b = (byte) 129;

1.6代码注释和编码规范

1.6.1 代码注释
(1)单行注释 //

(2)多行注释 /**/,注意,多行注释中可以嵌套单行注释,但不可嵌套多行注释

(3)文档注释 /** */,当文档注释出现在声明之前时,会被Javadoc文档工具读取作为Javadoc文档内容。

1.6.2 编码规范
养成良好的编码习惯,形成自己的编码风格
多用注释,少用晦涩的语句。


第一节包括一些Java的语言基础,包括下一节的流程控制,是程序设计必须具备的基础知识点,将这些知识熟练掌握不光有助于Java语言的学习,对于学习其他语言来说也同样是非常有用的。

你可能感兴趣的:(Java)