标签:
概述
面向对象三个特征:封装,继承,多态。
找对象,建立对象,使用对象,维护对象之间关系。
类和对象关系:
类:对现实生活中事物的描述。即class定义的类。
对象:就是这类事物,事实存在的个体。对应于java中new的实体。 对象指向实体。
定义类:就是在描述事物,就是定义属性和行为,行为对应为方法。
定义类的时候,属性如果不赋值,会自动进行初始化值,如果赋值,为显示初始化值。
类的属性为成员变量:作用于整个类中,存在于堆内存中。
局部变量:作用于函数中,或者语句中,存在于栈内存中。
main()函数为程序入口,包含main的类可以独立运行。
例子:
class Zx {
public static void main(String args[])
{
Car zx = new Car();
zx.ran();
zx.color="blue";
zx.ran();
}
}
class Car
{
String color="红色";
int num = 4;
void ran()
{
System.out.println(color+".."+num);
}
}
匿名对象:
使用方式一:当对对象的方法治=只调用一次时,可以用匿名对象来完成。比较简单,如果对一耳光对象进行多个成员调用,必须起名字。
使用方式二:可以将匿名对象作为实际参数进行传递。
例一:
new Car().num = 5; //成为垃圾
new Car().colur = "blue";//成为垃圾
new Car().ran();//成为垃圾,但是可以运行对象的方法
例二:
public static void show (Car c) //主类中的一个方法。
{
c.num = 3;
c.color = "black";
c.ran();
}
show(new Car()); //show 中的c 指向 new Car() ,不为垃圾,当show()生命周期结束后,变为垃圾。
特征一:封装:
封装:隐藏对象的属性和实现细节,仅提供公共的访问方式。
封装原则:
将不需要对外提供的内容都隐藏起来。
把属性都隐藏,提供公共方法对其访问。
private: 私有,权限修饰符,用于修饰类中成员(属性,方法)
私有是封装的一种表现形式。
例:
class Zx {
public static void main(String args[])
{
Persion p = new Persion();
p.age=-20;
p.speak();
}
}
class Persion
{
int age;
void speak()
{
System.out.println(age);
}
}
out:-20;
私有后:
class Zx {
public static void main(String args[])
{
Persion p = new Persion();
//p.age=-20; 会报错
p.speak();
}
}
class Persion
{
private int age;
//可以利用一个public void getAge(int a) { age=a; } 对外方法来提供传递方式。
void speak()
{
System.out.println(age);
}
}
构造函数
特点:
函数名与类名相同
不定义返回值类型
不可写return语句
当一个类中没有定义构造函数时,系统会给该类自动添加一个空参数的构造函数。
例:
class Zx
{
public static void main(String args[])
{
Persion p = new Persion();
}
}
class Persion
{
Persion()
{
System.out.println("Persion ran()");
}
}
//会直接输出"Persion ran()" ,因为对象一建立,就会调用与之对应的构造函数。作用:可以给对象进行初始化。
构造函数可以重载,函数名仍然为类名,根据 new Persion(int n);参数来决定执行哪个构造函数。
Java 5(对象)
标签:
原文地址:http://www.cnblogs.com/hitxx/p/4628450.html