JAVA基础知识要点归纳
•源文件的命名
如果.java文件包括一个公共类,那么它必须使用与那个公共类相同的文件名。也就是说允许没有public class,但必须有一个类名字与文件名相同。
•类的数量
在源文件中,可以定义多个类,但每次只能定义一个公共类。
•标识符
Java中使用的标识符可以是大写和小写字母、数字、下划线(_)、美元符号($)的任意组合。
这里需要提醒大家注意的是,Java是一种大小写敏感的语言,所以大家在书写代码的时候一定要注意大小写的运用。
•结构与构件
源文件的结构主要包含三个要素:
一个包声明(package可选)
任意数量的包引入语句(import可选)
任意数量的类的声明(class)
该三要素必须以上述顺序出现。任何包引入语句出现在所有类定义之前;如果使用包声明,则包声明必须出现在类和引入语句之前。
•this
关键字this,它用来引用正在被调用方法的所属当前对象。(正在操作的类)
•Main方法
Main()方法是Java程序的入口起点.它和其他方法的定义类似,只是它包含一个字符串数组用来传递命令行方式执行程序时所跟的参数。如下的例子它把命令行方式所跟的参数全部显示出来:
public class MainTest {
public static void main ( String [] args ) {
for ( int i = 0 ; i < args.lenth; i++ ) {
System.out.println(“Argument ” + i + “: ” + args[i] );
}
}
}
执行如下:
c:\java project\Main>; java MainTest Philip K Dick
Argumet 0: Philip
Argumet 1: K
Argumet 2: Dick
当类被实例化的时候,第一个被调用的方法就是构造函数。构造函数的主要作用就是初始化变量。如果没有定义构造函数,那么Java会使用其超类的默认构造函数。
构造函数与其他方法相比,主要具有以下的特点:
1.构造函数的名字和其类名相同。
2.没有返回值。
3.构造函数不能像其他超类的方法那样被继承。
4.不能使用final、abstract、synchronized、native或者static修饰符。
5.有时候,我们在编写构造函数的时候,可能需要首先调用其超类的构造函数,这里我们使用super的关键字,实际上它同this关键字的作用类似,只是它指的是其超类。
•引入语句import
使用import引入语句是允许你选择某个包中的某个类或者所有类,使之能在你当前的代码中 能方便的使用。例如:
import java.util.Dictionary; //引入java.util包中的Dictionary类
import javax.swing.*; //引入javax.swing包中的所有的类
当然如果你不使用引入语句也可以使用其他包中的其他的类,只要你指定引用对象的全名。比如:java.util.Date now = new java.util.Date(); //引入Date calss
另外,java.lang包是会被自动引入到源程序中的。
•关键字和标识符
Java语言一共使用了48个保留关键字,主要可以分为如下几类。
访问控制private , protected , public
类、方法和变量修饰符abstract , class , extends , final , implements , interface , native , new , static , strictfp , synchronized(同步), transient , volatile
程序控制语句break , case , continue , default , do , else , for , if , instanceof , return , switch , while
错误处理catch , finally , throw , throws , try
包相关import , package
基本类型boolean , byte , char , double , float , int , long , short
变量引用super , this , void
未使用的关键字const , goto
•访问控制
封装将数据和处理数据的代码连接起来。同时,封装也提供了另外一个重要属性:访问控制。通过封装你可以控制程序的某个部分可以访问类的成员,防止对象的滥用,从而保护对象中数据的完整性。由于Java语言使用了包的概念,使它的访问控制相对来说更复杂一些。我们把控制访问控制权限的修饰符主要分为两类,类和它的方法及变量,下面我们分别简单介绍。
类的访问控制
Default:当类不使用任何访问控制修饰符时,即采用的默认的访问控制权限。它允许同一个包内的类访问,而对于它所在包以外的类则不能访问。
Public:允许任何包中的任何类访问,对Java里面的所有类开放。
方法和变量的访问控制
Public:所有类均可以访问。
Private:只能被它所在的类中的成员访问,使该定义的成员对外在的类不可见。
Protected:可以被同一个包的类访问,另外其所有子类也可以访问。
Default:当成员不使用任何访问控制修饰符时,即采用默认的访问控制权限。它和Protected类似,唯一的区别在于子类访问权限,它仅允许同一个包的子类访问,而其他包中的子类则不可以访问。
•合法的返回类型
由于在方法调用的时候,方法返回的类型有可能与实际声明的类型不同,因此我们需要关心什么样的返回类型才是合法的。实际上,系统采用了隐式的类型转换来处理类型的返回。以下几种情况的是合法的:
如果声明的是浮点类型,那么可返回整型类型。
如果声明的是整型类型,那么只要返回的整型类型范围小于或等于声明的类型,返回合法。
如果声明的是对象类型,那么只要返回的是该对象类型,或者是其子类的对象类型,合法。
•字符串连接运算符 +
Java语言与C语言类似,也使用+作为连接字符串的运算符,这实际是对String类重载了+运算符。
•位运算符
包括位移运算和位逻辑运算。
位移运算:>;>;右移、<<左移、>;>;>;无符号右移。??????
位逻辑运算: &与、|或、^异或、~非运算
条件运算符 ?:(z=x>y?x:y)????
•类型转换
转换方式,即显式转换和隐式转换。
转换的对象可分为两类,一是基本类型,二是对象类型。
对于基本类型来说,凡是大转小(以类型的宽度考虑)需要使用显式转换,也就是需要在变量前面强制给出需要转换成的类型。而对小转大来说,系统会自行进行隐式转换。
对于对象类型来说,也与之类似。凡是超类转子类则需要使用显式强制转换,而子类转超类系统可自行进行隐式转换。另外还需要注意的一点是,对于不在一个继承关系树上的类要进行强制转换,Java编译可通过,但实际运行会出错。
阅读(2206) | 评论(0) | 转发(0) |