java学习之路 之 面向对象编程-类的成员之属性、方法及对象的创建和使用

  • Post author:
  • Post category:java


类的成员之一:属性

语法格式:修饰符  类型  属性名 =初值 ;



说明:



修饰符private:该属性只能由该类的方法访问。





修饰符public:该属性可以被该类以外的方法访问。



类型:任何基本类型,如int、boolean或任何类。




举例:

public class Person{           
	private int age;             //声明private变量 age           
	public String name = “Lila”;    //声明public变量 name      
}

补:变量的分类:成员变量与局部变量



在方法体外,类体内声明的变量称为成员变量。



在方法体内部声明的变量称为局部变量。




注意:二者在初始化值方面的异同:



同:都有生命周期



异:局部变量除形参外,需显式初始化。



成员变量(属性)和局部变量的区别?



成员变量:



成员变量定义在类中,在整个类中都可以被访问。



成员变量分为类成员变量和实例成员变量,实例变量存在于对象所在的堆内存中。



成员变量有默认初始化值。



成员变量的权限修饰符可以根据需要,选择任意一个






局部变量:



局部变量只定义在局部范围内,如:方法内,代码块内等。



局部变量存在于栈内存中。



作用的范围结束,变量空间会自动释放。



局部变量没有默认初始化值,每次必须显式初始化。



局部变量声明时不指定权限修饰符

类的成员之二:方  法

语法格式:





修饰符  返回值类型  方法名 ( 参数列表) {





方法体语句;



}

说明: 修饰符:public, private, protected等。





返回值类型:return语句传递返回值。没有返回值:void。

举例:


public class Person{    
	private int age;    
	public int getAge()  {
		return age; 
	} //声明方法getAge   
	public void setAge(int i) {          //声明方法setAge 
		age = i;        //将参数i的值赋给类的成员变量age    
	}
}

对象的创建和使用



java类的实例化,即创建类的对象




使用new +构造器创建一个新的对象;

使用“对象名.对象成员”的方式访问对象成员(包括属性和方法);

举例:

public class Animal {  
	public int legs;     
	public void  eat(){    
		System.out.println(“Eating.”);  
	}  
	public viod move(){      
		System.out.println(“Move.”);  
	}
}

public class Zoo{   
	public static void main(String args[]){
		Animal xb=new Animal();
		xb.legs=4; 
		System.out.println(xb.legs);
		xb.eat(); 
		xb.move();   
	}
}




如果创建了一个类的多个对象,对于类中定义的属性,每个对象都拥有各自的一套副本,且互不干扰。

举例:

public class Zoo{    
	public static void main(String args[]){
		Animal xb=new Animal();
		Animal xh=new Animal();
		xb.legs=4; xh.legs=0; 
		System.out.println(xb.legs);   //4
		System.out.println(xh.legs);   //0
		xb.legs=2; 
		System.out.println(xb.legs);   //2
		System.out.println(xh.legs);   //0    
	}  
}

提 示:



在一个类中的访问机制:类中的方法可以直接访问类中的成员变量。(例外:static方法访问非static,编译不通过。)



在不同类中的访问机制:先创建要访问类的对象,再用对象访问类中定义的成员。

对象的产生:



当一个对象被创建时,会对其中各种类型的成员变量自动进行初始化赋值。除了基本数据类型之外的变量类型都是引用类型,如上面的Person。

匿名对象:



我们也可以不定义对象的句柄,而直接调用这个对象的方法。这样的对象叫做匿名对象。如:new Person().shout();



使用情况;



如果对一个对象只需要进行一次方法调用,那么就可以使用匿名对象。



我们经常将匿名对象作为实参传递给一个方法调用。




版权声明:本文为OnlyLove_longshao原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。