类与对象
java中使用class关键字来定义类
class 类名称{
//类的成员变量
//类的成员方法
}
成员变量
形式 数据类型 变量名称 (【=值】)(定义变量时可以赋值也可不赋值)
成员方法
对应于类对象的行为,主要用来定义类可执行的操做
方法的定义必须在某个类中,定义方法时如果没有指定权限修饰符,方法的访问权限为默认(即只能在本类及同一个包的类中进行访问)
成员方法的参数
(1)值参数,即按值传递(在方法中对值类型的形参的修改并不会影响实参)
(2)引用参数(类似传地址,参数类型是数组或其他引用类型)
(3) 不定长参数:即多个参数例如
a.add(int···x); //定义add方法,并指定不定长参数的类型(当成一个数组处理,而且只能是三个点)
注意:不定长参数必须是方法中的最后一个参数,任何其他常规参数必须在他前面
构造方法 (是一个与类同名的方法)
特点:(1) 没有返回类型,也不能定义成void,(不需要通过使用void关键字进行修饰)
(2)构造方法的名称要和本类的名称相同
(3)构造方法主要作用是完成对象的初始化工作,他能把定义对象的参数传递给对象成员
局部变量
在使用是必须进行赋值操作或被初始化,如果在成员方法内定义一个变量,那么这个变量被称为局部变量
对象的创建
通过new操作符来创建对象
public class CreatObject{
public CreatObject(){ //构造方法
Systrm.out.println("abc");
}
public static void main(String[] args){
new CreatObject(); //使用new操作符创建对象的同时,将自动调用构造方法中的代码
}
}
访问对象的属性和行为
用new创建一个对象后,可用“对象.类成员”来获取对象的属性和行为
对象的销毁
被java虚拟机视为垃圾的对象
(1)对象引用超过其范围
(2)将对象赋值为null
this关键字
(1)当类中成员变量与成员方法的参数重名时,使用this关键字被隐式的用于引用对象的成员变量和方法
(2)作为方法的返回值
(3)调用类中的构造方法
static关键字
1.静态变量:把共享的变量用static修饰
例如:一个水池有注水,也有放水,则水量是共享变量
定义 static public int water=0;
当类首次被加载时,静态变量就被分配到内存中,直到程序结束才会释放
2.静态常量
在处理问题时会需要两个类共享一个数据常量
用final static修饰一个成员变量,这个成员变量就会成为一个静态常量
例final static double PI=3.1415926;
(常量大写)
3.静态方法
调用类的静态方法,无需创建类的对象(类名.静态方法)
public class StaticMethod{
static public void show(){ //定义静态方法
System.out.println("abc");
}
public static void main(String[] args){
StaticMethod.show(); //使用类名调用静态方法
}
}
4.静态代码块(自始至终只运行一次)
public class StaticTest{
static{
语句
}
}
类的主方法 (public static void main(String[] args))
特性:(1)主方法是静态的,若果要直接在主方法中调用其他方法,则该方法必须也是静态的
(2)没有返回值
(3)形参为数组,其中args[0]~args[n]分别代表程序的第一个参数到第n+1个参数,可以使用args.length获取参数的个数