发布网友 发布时间:2022-03-22 19:10
共4个回答
热心网友 时间:2022-03-22 20:39
封装,简单理解就是把一系列的数据放在一个类中,如果形容一个人(假设吧‘人’作为一个类),我们可以用身高(hight),体重(weight)等来描述,如果不封装,我们需要3个变量来形容它。在面向对象中,可以用一个Person类封装这些数据,Person具有3个成员变量,分别是 height,weight。使用的时候,每当生成一个这样的类的对象,就具有这3个属性。
继承,如果B类继承A类。那么B类将具有A类的所有方法,同时还可以扩展自己独有的方法和属性。还用人做例子。‘人’是父类,那么‘男人’,‘女人’都是继承自‘人’。也就是说,不论‘男人’,‘女人’,都具有‘身高’,‘体重’这两个属性,同时,他们可以有自己独有的属性。比如‘男人’可以有一个‘妻子’属性来表示他的妻子是谁。,而女人可以有‘丈夫’属性。
多态,在java中,同一个方法可以有多种不同的表现形式,具体说来分为重载和重写。重载就是一个方法的方法名相同而所具有的参数列表不同。比如:
public String talk(String content); //参数是String,
public String talk(String content, int number) //参数是2个,String和int
重载则是子类在继承父类的同时,重新实现了父类的某个方法。重载的方法名和参数都必须完全相同。
比如父类
public String talk(String content) {
System.out.print(content);
}
子类继承该类,所以也具有talk这个方法,他重新定义了该方法的实现
public String talk(String content) {
System.out.println("Hi" + content);
}
热心网友 时间:2022-03-22 21:57
Java做为面向对象语言,有着三大特征,即封装,继承和多态了。
一。封装即是把所有对象都封装在类里面使用,即每个对象,不管是还是变量,方法都必须在类里的。虽然C++也是面向对象语言的,没记错的话,C++有一种变量叫全局变量,是可以不在类里面的,但Java是不允许这样的。封装性是全于对数据安全的考虑。而谈封装性和public,protected,private这些修饰符分不开的。下面举一个例子,一个JavaBean,可能不足于说明什么问题,请见谅:
public class Str{
private String str;
public void setStr(String str){
this.str=str;
}
public String getStr(){return str};
}
二。继承。继承是为了提高代码的可重用性。继承中有超类和子类的概念非常重要。一个类A继续于另一个类B,那么A是B的子类,B就是A的超类。B里面有的非private方法和变量,A里面全有,而A里面有的非private方法和变量在B里面就不一定有了。举个例子:
有一个类Animal,有一个方法为protected eat(),有一个类Fish继承于Animal,那么既使Fish类里不写eat方法,照样可以调用Fish的eat方法。当然Fish里也可以写eat方法,这就成了方法的覆盖了。
三。多态。通过多态,就能“对通用情况进行编程”,而不是“对特点情况进行编程”。而且多态的使用会使程序俱有更好的可扩展性。同样举一个例子:
Fish f = new Fish(),f.eat()可以调用Fish的eat方法,Animal a = new Fish(),a.eat()调用的还是Fish的eat方法,并非Animal的。
多态的概念可能不好理解一点,如果结合抽象类和接口的知识就可以明白多态的强大之处了。
总结:封装,为了数据安全性;继承,为了代码的可重用;多态,为了程序有更好的可扩展性和可以对通用情况下编程。
热心网友 时间:2022-03-22 23:32
我也是刚学的。不过我学过C++
封装就是类的思想。
继承是指在类的基础上再建一个新类,包括了原来的类的成员和方法。
多态指基类中的的纯虚函数可以在子类中实现,不同的子类实现可以不同。
热心网友 时间:2022-03-23 01:23
封装,继承,多态,谁能说清楚?