Java基本语法
标识符
概念 Java对各种变量,方法和类等要素命名时使用的字符序列称为标识符 规则 1.标识符由字母,下划线,美元符或数字组成 2.标识符应由字母,下划线,美元符开头 3.Java标识符大小写敏感,长度没有限制 注:Java标识符要见名知意,且不能与关键字重名 关键字 概念 Java中一些赋以特定含义,拥有特殊用途的字符串叫做关键字,所有的Java关键字都是小写英文,关键字大写后不再被当作关键字。 关键字的分类 用于控制访问相关4个:public(公共的)、protected(受保护的,同一个包中的其它类及子类可以访问。)、 缺省的、 private(私有的,本类可以访问) 修饰符与包及类之间的关系以及访问关系: public protected 缺省 private 本类 可以 可以 可以 可以 同包子类 可以 可以 可以 不可以 同包非子类 可以 可以 可以 不可以 不同包子类 可以 可以 不可以 不可以 不同包且非子类 可以 不可以 不可以 不可以 类、接口、抽象类相关、实例化对象相关6个:abstract(抽象的)class(定义类)、interface(定义接口)implements(实现)、extends(继承)new(创建新对象) 程序控制相关12个:if(如果)、else(否则) 、instanceof(判断一个对象是否是某个类的实例)switch(开关)、case(switch语句的一个条件)、break(跳出循环/跳出switch语句块)、default(switch语句的默认分支,当所有的case都不满足条件时会执行)for(for循环语句)、do(循环语句,循环体至少会被执行一次)、while(当…时)、continue(结束本次循环,继续下一次循环)return(返回…,用于跳出方法)、 修饰方法,变量方法相关8个:static(静态的)、final(最终的不可被改变的)、const(const是Java预留关键字,用于后期扩展用,用法跟final相似,不常用)native(表示方法用非java代码实现)synchronized(线程同步的)transient(修饰不要序列化的字段)volatile(标记字段可能会被多个线程同时访问)strictfp(严格的/精准的) 异常处理相关5个:try(捕获异常)、catch(处理异常)、finally(有无异常都会执行)throw(抛出一个异常对象)、throws(声明一个方法可能抛出异常) 包相关2个:import(引入包)package(定义包) 数据类型相关8个:8种基本数据类型:byte、short、int、long、float、double、char、boolean 变量引用相关3个:super(调用父类的方法/构造函数/成员变量)this(表示调用当前实例的成员变量或方法/调用另一个重载的构造函数)void(没有返回值) 其他相关2个:assert(断言条件是否满足,满足则继续向下执行,不满足则抛出异常终止执行)、enum(枚举类型) 保留字:goto const false true。 常量 Java的常量值用不同的数据类型字符串表示, 比如:整数型:123 ;字符常量 ‘a’ ;逻辑常量:true;字符串常量:“Hello World”。 变量 Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。 Java中每一个变量都属于特定的数据类型,在使用前必须申明变量类型: int i = 1; float f = 12.3f; //注意float a = (float)1.3;或者float a = 1.3f;(f或F都可以不区分大小写) double d=1.3; //注意和单精度浮点数float区分 String name ="hello world"; 变量的分类 按声明位置划分 局部变量:在方法或者语句块内部定义的变量 成员变量:在方法的外部,类的内部定义的变量 所属数据类型划分 基本数据类型变量 引用数据类型变量 局部变量和成员变量 public class Test{ public int i;//成员变量 public void method(){ int j;//局部变量 局部变量不允许使用访问修饰符修饰 }} 基本数据类型的转换 boolean类型不可转换为其他的数据类型 字符型,浮点型的数据在混合运算中相互转换要准守如下规则 容量小的类型自动转换为容量大的数据类型: byte,char,short > int > long > float > double byte,short不会相互转换,他们在计算式先转换成int类型 容量大的类型转换成容量晓得类型要加上强制转换符,可能会造成精度降低或者溢出 public class TestConvert { public static void main(String arg[]) { int i1 = 123; int i2 = 456; double d1 = (i1+i2) 1.2;//系统将转换为double型运算 因为小的类型会自动转换为大的数据类型 1.2 默认是double类型 float f1 = (float)((i1+i2)1.2);//需要加强制转换符 (i1+i2) 1.2是double类型,如果用float接受 需要使用强制转换因为 double类型大于float byte b1 = 67; byte b2 = 89; byte b3 = (byte)(b1+b2);//系统将转换为int型运算,需要强制转换符 System.out.println(b3); double d2 = 1e200; float f2 = (float)d2;//会产生溢出 System.out.println(f2); float f3 = 1.23f;//必须加f long l1 = 123; long l2 = 30000000000L;//必须加l float f = l1+l2+f3;//系统将转换为float型计算 long l = (long)f;//强制转换会舍去小数部分(不是四舍五入) }} Java运算符分类 算术运算符:+ - / % ++ --; 关系运算符:> < <= >= == != 逻辑运算符:! & | ^ && || 位运算符:& | ^ ~ >> << >>> 赋值运算符:= 扩展赋值运算符:+= -= /= *= 字符串连接运算符:+ 语句 条件语句 if //如果条件为true则执行 if...else //如果if条件为true执行if语句,否则执行else语句 if...else if //同上 if...else if...else if...else //有一条执行就不会再判断后续天剑 switch swtich()//变量类型只能是int、short、char、byte和enum类型。当进行case判断时,JVM会自动从上到小扫描,寻找匹配的case。 循环语句 for while do while break 语句,终止某个语句块的执行,在循环语句体系中,可以强制退出循环 Continue 语句,跳过本次循环进入下一次循环 数组 定义 dataType[] arrayVar; dataType arrayVar [ ]; 说明: 首先dataType它可以是基本数据类型比如 int array [ ];也可以是引用类型 比如Object [ ]。 方法 方法是语句的集合,它可以实现一个功能,比如println()方法它可以实现打印输出。在java中方法是包含在类或对象中,方法创建于程序中,在其他地方被引用。 定义一个方法 修饰符 返回值类型 方法名(参数类型 参数名){ ... 方法体 ... return 返回值; } //示例 public int addNumber(int a,int b){ int x=0; x=a+b; retutn x; } 定义规则 1、命名规则,方法名一般以小写字母开头,后边的单词首字母大写 2、return后边跟的值的类型必须与返回值类型相同,除了void,因为void是无返回值的。 解析方法 修饰符:修饰符,这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。 返回值类型 :方法可能会返回值。returnValueType 是方法返回值的数据类型。有些方法执行所需的操作,但没 有返回值。在这种情况下,returnValueType 是关键字void。 方法名:是方法的实际名称。方法名和参数表共同构成方法签名。 参数类型:参数像是一个占位符。当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。 方法体:方法体包含具体的语句,定义该方法的功能如 int x=0; x=a+b。 main方法 main 方法是被 JVM调用的,除此之外,main 方法和其它方法没什么区别。main 方法的头部是不变的,如下所示,带修饰符 public 和 static,返回 void 类型值,方法名字是 main,此外带个一个 String[] 类型参数。String[] 表 明参数是字符串数组。 public class TestMax { /* 主方法 / public static void main(String[] args) { int i = 5; int j = 2; int k = max(i,j); System.out.println( i + " 和 " + j + " 比较,最大值是:" + k); } /* 返回两个整数变量较大的值 / public static void main(String args[]) { Student s1 = new Student("小红");//创建一个小红 Student s2 = new Student(250,18);//创建一个 s1.show();//对象调用方法 s2.show(); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |