您的位置:首页 > 其它

对面向对象程序设计三大特征的理解

2012-08-24 20:55 471 查看
java 本身是一种面向对象的程序设计语言,因此这三大特征对于学好java语言很重要。

面向对象程序语言的三大特征分别是:1.封装,2.继承,3.多态

第一个特征:封装:

封装:简单地说就是把数据和方法放在一个类里面包装起来。

封装的形式:

修饰符 class 类名

{

成员变量:

修饰符 返回类型 方法名(【参数1,参数2,参数3...】)

{

局部变量;

方法体

}

}

简单代码形式:

public class Test

{

public int add(int a ,int b)

{

return a + b;

}

public static void main(String [] arsg)

{

int x = 3;

int y = 5;

Test test = new Test();

int m =test.add(int x,int y);

System.out.println(m);

}

}

方法只能调用,不能嵌套。在这里面方法可以通过引用类型的变量来调用;如何生成引用类型的变量:

类名 变量名 = new 类名();

变量名.方法名(参数);

注意:在调用方法是,方法的实际参数类型应该与形式参数的类型一致,返回类型的值应该与方法的返回值类型相同。当方法的名字前是void ,这个方法没有返回值,叫无返回值的方法。

第二个特征:继承

继承:当一个类继承了另一个类,通过关键字extends实现继承,被继承的叫父类,继承的类叫子类。

在子类生成对象时,先调用父类不带参数的构造方法,在调用子类不带参数的构造方法。

继承的特点:

父类有的子类可以继承;父类没有的子类可以增加,父类有的子类可以改变;

注意:父类的构造方法不能被子类继承,父类的私有方法不能被子类继承;父类的属性和方法可以被继承。

继承的简单代码形式:Son 继承了 Father

public void Test

{

}

class Father()

{

String name;

public Father()

{

}

public void method()

{

System.out.println("Father");

}

}

class Son extends Father

{

public void method()

{

System.out.println("Son");

}

}

第三个特征: 多态:

多态:简单的说就是父类型的引用指向子类型的对象。

形式 : Father father = new Son ();但是通过引用类型的变量可以调用的是子类的方法(指向谁调用谁),但是调用子类的方法时,首先要看是不是子类重写了父类的方法;如果子类重写了这个父类的方法,就可以通过父类型的引用子类的方法。

Father father = new Son();这个过程体现了类型类型的转化;

有向上类型的转化与向下类型的转化;但是向下类型的转化,必须要强制转化。例如:

Father father = new Son();

Son son =(son) father;//强制类型的转化

son.method();

在向下强制类型转换的过程中,要转换成那个子类的引用,在父类实例化时,父类的引用就要指向这个子类的对象。

如果是:Father father = new father();

Son son = (Son)father;

son.method();//如果父类的引用指向 父类的对象,再强制转化时,就会报异常 ClassCastException

多态的简单代码形式:

public class Test

{

public static void main(String [] args)

{

Father father = new Son();

Son son = (Son) father;

son.method();

}

}

class Father

{

public void method()

{

System.out.println("Father");

}

}

class Son extends Father

{

public void method()

{

System.out.println("Son");

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: