JAVA程序基础
一、 java源程序扩展名:
**********************************************
二、 java源程序的构成基本单位:类(用class 声明)
类的构成:成员变量和方法
*基本形式:
class 类名
{
成员变量; //成员变量:描述对象的属性
方法(即C语言中的函数) //方法:描述对象的功能
}
**********************************************
三、 java源文件的构成规则:
1. java源文件可以由多个类构成,但只能只一个public类。
2.如果一个类被声明为public类,则java源文件名必须与此类名相同
3.如果java源文件中没有public类,则java源文件名可以与此文件中的任一类名相同
4. java源程序必须有一个主类,即包含了public static void main(String args[])主方法的类,因为java源程序执行时,要从主方法开始。(一般情况下都是在主方法中创建对象)
**********************************************
四、创建对象的形式:类名对象名=new 构造方法名( );
**********************************************
五、调用方法的形式:对象名.方法名();
**********************************************
六、输出数据:System.out.println();
**********************************************
七、编译源文件:javac 源文件名.java (生成字节码文件,扩展名为
**********************************************
八、执行字节码文件:java 字节码文件名 (注:哪个字节码文件中包含main,就运行哪一个)
**********************************************
**********************************************
**********************************************
一、成员变量:实例变量和静态变量
1.实例变量:没加static声明,每个对象的实例变量都占用自己的内存空间。
2.静态变量:加static声明,所有对象的静态变量都共用一个内存空间,静态变量可由类名直接调用,形式为:类名.静态变量名
常量:用final声明,在声明时必须初始化,因为常量只能用不能改。
**********************************************
二、方法:构造方法、实例方法、类方法(静态方法)
1.构造方法:
1) 构造方法名与类名完全相同,并且没有返回值,即方法名前不能加任何类型
2) 当在创建对象时,要调用构造方法来实例化一个对象。
3) 构造方法一般用于给成员变量赋值。
4) 一个类中如果没有显示的构造方法,则隐含一个默认的构造方法,形式为:
构造方法名( )
{ }
5) 一个类中如果有显示的构造方法,则不提供默认的构造方法。
6) 一个类可以有多个构造方法,但是要满足构造方法参数个数不同或类型不同。
2.实例方法:
1) 实例方法只能通过对象调用,因为在创建对象之前,系统没给成员变量和方法分配内存地址。
2) 所有对象的方法入口地址相同。
3.类方法(静态方法):
1) 编译程序时,类方法就被分配了内存地址。
2) 可通过类名调用:类名.方法名(); 也可能对象调用:对象名.方法名();
3) 在类方法中只能操作类变量(静态变量),因为在没有创建前,实例成员变量没有内存地址
**********************************************
三、方法重载:是指一个类中可以有多个方法具有相同名字,各方法要满足参数个数或类型不同。
四、关键字this:可出现在构造方法中,代表当前对象,当局部变量与成员变量同名时,将成员变量前加this. ,区别于局部变量。This只能用在构造方法和实例方法中。
**********************************************
五、访问权限
1.私有变量和私有方法:前加private,只有在本类中创建该类的对象,才能访问自己的私有成员变量和类中的私有方法。
2.共有变量和共有方法:前加public,在本类中可以用,也可以在其它类中通过类名(或对象名)来调用。
3.受保护的成员变量和方法:前加protected,只要在同一个包中定义的类,则可以通过类名和对象名引用。(讲继承时再讲)。
4.友好变量和友好方法:不加private,public,protected, 只要在同一个包中定义的类,则可以通过类名和对象名引用。